Function at 0x4232d0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x624
mov edi, dword [esp + 0x638]
mov ebp, ecx
mov dword [esp + 4], edx
lea eax, [esp + 0xa4]
push 0x2c0
push 0
push eax
call fcn.007bdf30
add esp, 0xc
lea eax, [esp + 0x364]
push 0x2c0
push 0
push eax
call fcn.007bdf30
add esp, 0xc
xorps xmm0, xmm0
xor esi, esi
mov bl, 1
test edi, edi
mov word [esp + 0x2c], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x78], 0
movups xmmword [esp + 0x1c], xmm0
movups xmmword [esp + 0x90], xmm0
movups xmmword [esp + 0x80], xmm0
movups xmmword [esp + 0x68], xmm0
movups xmmword [esp + 0x58], xmm0
movups xmmword [esp + 0x48], xmm0
movups xmmword [esp + 0x38], xmm0
je 0x4239bb
lea eax, [edi - 1]
mov ecx, edi
mov dword [esp + 0x14], ebp
nop dword [eax + eax]
cmp eax, dword [esp + 4]
jae 0x423ab8
cmp byte [ebp + ecx - 1], 0
jne 0x4233c5
dec ecx
jne 0x423380
xor ecx, ecx
cmp edi, 0x32
mov edx, 2
mov eax, 2
mov edi, 0
mov ebx, 0
ja 0x4234fb
xor esi, esi
mov dword [esp], 0
xor ebp, ebp
mov bl, 1
jmp 0x423ce1
cmp edi, 0x32
mov dword [esp + 0x30], 0
jbe 0x4234be
test ecx, ecx
je 0x4234eb
xor edi, edi
mov ebx, 1
xor eax, eax
mov dword [esp + 0x10], 1
mov dword [esp + 0x18], 0
mov dword [esp + 8], ecx
jmp 0x42345d
mov edx, dword [esp + 8]
add eax, edi
mov ebp, eax
cmp edi, 3
setae al
test cl, cl
sete cl
and al, cl
movzx ebx, al
add dword [esp + 0x10], ebx
test al, al
mov eax, 0
mov ebx, dword [esp + 0xc]
cmovne eax, edi
add dword [esp + 0x18], eax
cmp edi, 4
setb al
or al, cl
mov ecx, eax
xor cl, 1
movzx ecx, cl
add ebx, ecx
test al, al
mov eax, 0
mov ecx, edx
cmovne edi, eax
mov eax, dword [esp]
add eax, edi
cmp ebp, edx
mov edi, eax
mov eax, ebp
mov ebp, dword [esp + 0x14]
jae 0x4234db
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 4]
sub ebx, eax
jbe 0x423b76
mov edx, ecx
movzx ecx, byte [ebp + eax]
lea ebp, [eax + 1]
mov dword [esp], edi
mov edi, 1
cmp ebp, edx
jae 0x423408
mov edi, dword [esp + 0x14]
sub edx, eax
lea ebp, [edi + eax]
mov edi, 1
nop word cs:[eax + eax]
nop dword [eax + eax]
cmp ebx, edi
je 0x423a7f
cmp byte [ebp + edi], cl
jne 0x423400
inc edi
cmp edx, edi
jne 0x4234a0
mov edi, edx
jmp 0x423400
mov dword [esp + 0x18], 0
test ecx, ecx
mov eax, 0
mov dword [esp], 0
jne 0x42352d
jmp 0x423cdf
mov eax, dword [esp + 0x10]
add ebx, ebx
mov edx, ebx
mov ebx, dword [esp + 0x18]
add eax, eax
jmp 0x4234fb
mov edx, 2
xor ecx, ecx
mov eax, 2
xor edi, edi
xor ebx, ebx
mov dword [esp + 0x10], eax
xor eax, eax
cmp edi, edx
seta al
mov dword [esp + 0x18], eax
xor eax, eax
cmp ebx, dword [esp + 0x10]
mov bl, 1
seta al
mov dword [esp + 0x30], eax
test ecx, ecx
mov eax, 0
mov dword [esp], 0
je 0x423cdf
xor esi, esi
xorps xmm0, xmm0
xor eax, eax
xor edi, edi
mov byte [esp], 8
mov dword [esp + 8], ecx
jmp 0x423556
mov ecx, dword [esp + 8]
mov eax, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
add eax, edx
cmp eax, ecx
jae 0x423953
cmp eax, dword [esp + 4]
jae 0x423acc
movzx ecx, byte [ebp + eax]
lea ebx, [eax + 1]
mov dword [esp + 0xc], eax
test cl, cl
je 0x423590
cmp dword [esp + 0x18], 0
mov edx, 1
je 0x423605
cmp ebx, dword [esp + 8]
jb 0x4235aa
jmp 0x423605
cmp dword [esp + 0x30], 0
mov edx, 1
je 0x4237f0
cmp ebx, dword [esp + 8]
jae 0x4237f0
mov byte [esp + 0x10], cl
mov ecx, ebx
mov ebx, dword [esp + 8]
mov edx, dword [esp + 4]
add ebp, eax
mov dword [esp + 0x34], ecx
sub ebx, eax
cmp ecx, edx
mov eax, edx
mov edx, 1
cmova eax, ecx
movzx ecx, byte [esp + 0x10]
sub eax, dword [esp + 0xc]
nop word cs:[eax + eax]
nop
cmp eax, edx
je 0x423a41
cmp byte [ebp + edx], cl
jne 0x4235f5
inc edx
cmp ebx, edx
jne 0x4235e0
mov edx, ebx
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0xc]
test cl, cl
je 0x42379e
cmp byte [esp], cl
jne 0x423640
mov ebx, edx
cmp ebx, 7
jne 0x423666
cmp edi, 0x2bf
ja 0x423bda
mov byte [esp + edi + 0xa4], cl
mov byte [esp + edi + 0x364], 0
inc edi
mov ebx, 6
jmp 0x4236c0
cmp edi, 0x2c0
jae 0x423bc9
mov byte [esp + edi + 0xa4], cl
mov byte [esp + edi + 0x364], 0
inc edi
lea ebx, [edx - 1]
mov esi, edi
cmp ebx, 7
je 0x423611
cmp ebx, 2
ja 0x4236c0
test ebx, ebx
je 0x4236ae
cmp edi, 0x2c0
mov esi, 0x2c0
cmovb esi, edi
add esi, 0xfffffd40
nop word cs:[eax + eax]
nop dword [eax]
test esi, esi
je 0x423aa7
mov byte [esp + edi + 0xa4], cl
mov byte [esp + edi + 0x364], 0
inc edi
inc esi
dec ebx
jne 0x423690
mov esi, edi
mov byte [esp], cl
mov ecx, dword [esp + 8]
jmp 0x42354c
cmp edi, 0x2bf
ja 0x423a30
add ebx, 0xfffffffd
mov ebp, edi
nop word cs:[eax + eax]
nop dword [eax + eax]
mov eax, ebx
lea esi, [ebp + 1]
mov byte [esp + ebp + 0xa4], 0x10
and al, 3
cmp ebx, 4
mov byte [esp + ebp + 0x364], al
jb 0x423710
shr ebx, 2
mov ebp, esi
dec ebx
cmp esi, 0x2c0
jne 0x4236e0
jmp 0x423a2b
cmp ebp, edi
jbe 0x423790
inc edi
mov ebx, ebp
mov dword [esp + 0x10], edx
mov eax, edi
nop dword [eax]
movzx edx, byte [esp + eax + 0xa3]
mov ch, byte [esp + ebx + 0xa4]
mov byte [esp + eax + 0xa3], ch
mov byte [esp + ebx + 0xa4], dl
dec ebx
cmp eax, ebx
lea eax, [eax + 1]
jb 0x423720
nop word cs:[eax + eax]
nop
movzx eax, byte [esp + edi + 0x363]
movzx edx, byte [esp + ebp + 0x364]
mov byte [esp + edi + 0x363], dl
mov byte [esp + ebp + 0x364], al
dec ebp
cmp edi, ebp
lea edi, [edi + 1]
jb 0x423750
mov ebp, dword [esp + 0x14]
mov edi, esi
mov byte [esp], cl
jmp 0x423540
mov ebp, dword [esp + 0x14]
mov edi, esi
mov byte [esp], cl
jmp 0x42393f
cmp edx, 0xb
jne 0x4237db
cmp edi, 0x2bf
ja 0x423c2e
mov byte [esp + edi + 0xa4], 0
mov byte [esp + edi + 0x364], 0
inc edi
mov ebx, 7
mov edx, 0xb
cmp edi, 0x2bf
jbe 0x423897
jmp 0x423a6e
cmp edx, 3
jae 0x423888
test edx, edx
je 0x42394c
nop dword [eax]
mov ecx, 0x2c0
xor eax, eax
lea esi, [edx - 1]
sub ecx, edi
cmovb ecx, eax
cmp esi, ecx
cmovb ecx, esi
mov esi, edi
cmp ecx, 0x10
jb 0x423843
inc ecx
mov eax, 0x10
lea ebx, [esp + edi + 0x364]
mov esi, ecx
and esi, 0xf
cmove esi, eax
mov eax, ecx
lea ecx, [esp + edi + 0xa4]
xor ebp, ebp
sub eax, esi
lea esi, [edi + eax]
movups xmmword [ecx + ebp], xmm0
movups xmmword [ebx + ebp], xmm0
add ebp, 0x10
cmp eax, ebp
jne 0x423830
mov ebp, dword [esp + 0x14]
mov ebx, edx
mov ecx, 0x2c0
sub ebx, eax
cmp edi, 0x2c0
cmovae edi, ecx
mov ecx, dword [esp + 8]
lea eax, [eax + edi - 0x2c0]
test eax, eax
je 0x423a58
mov byte [esp + esi + 0xa4], 0
mov byte [esp + esi + 0x364], 0
inc esi
inc eax
dec ebx
jne 0x423860
mov eax, dword [esp + 0xc]
mov edi, esi
jmp 0x42354c
lea ebx, [edx - 3]
cmp edi, 0x2bf
ja 0x423a6e
mov eax, edi
nop dword [eax]
mov ecx, ebx
lea esi, [eax + 1]
mov byte [esp + eax + 0xa4], 0x11
and cl, 7
cmp ebx, 8
mov byte [esp + eax + 0x364], cl
jb 0x4238cf
shr ebx, 3
mov eax, esi
dec ebx
cmp esi, 0x2c0
jne 0x4238a0
jmp 0x423a69
cmp eax, edi
jbe 0x42393d
inc edi
mov ebx, eax
mov dword [esp + 0x10], edx
mov ecx, edi
nop dword [eax]
mov dh, byte [esp + ecx + 0xa3]
mov dl, byte [esp + ebx + 0xa4]
mov byte [esp + ecx + 0xa3], dl
mov byte [esp + ebx + 0xa4], dh
dec ebx
cmp ecx, ebx
lea ecx, [ecx + 1]
jb 0x4238e0
nop word cs:[eax + eax]
nop
movzx ecx, byte [esp + edi + 0x363]
movzx edx, byte [esp + eax + 0x364]
mov byte [esp + edi + 0x363], dl
mov byte [esp + eax + 0x364], cl
dec eax
cmp edi, eax
lea edi, [edi + 1]
jb 0x423910
mov edi, esi
jmp 0x423540
mov edi, esi
mov ecx, dword [esp + 8]
mov eax, dword [esp + 0xc]
jmp 0x42354c
xor edx, edx
jmp 0x4236b1
test esi, esi
sete bl
je 0x4239bb
mov eax, esi
mov edx, 0xfffffd40
neg eax
nop word cs:[eax + eax]
nop dword [eax]
test edx, edx
je 0x423b53
movzx ecx, byte [esp + edx + 0x364]
cmp ecx, 0x12
jae 0x423b67
inc dword [esp + ecx*4 + 0x38]
lea ecx, [eax + edx + 1]
inc edx
cmp ecx, 0xfffffd40
jne 0x423970
mov ecx, dword [esp + 0x3c]
mov eax, dword [esp + 0x38]
test ecx, ecx
je 0x4239c9
test eax, eax
je 0x4239c9
mov ebp, 2
mov dword [esp], 0
jmp 0x423ce1
mov dword [esp], 0
xor ebp, ebp
jmp 0x423ce1
or eax, ecx
xor edx, edx
test ecx, ecx
mov ecx, dword [esp + 0x40]
mov ebp, 2
setne dl
test eax, eax
sete bh
mov dword [esp], edx
or eax, ecx
sete al
test ecx, ecx
mov ecx, 2
cmove ecx, edx
je 0x4239fc
test bh, bh
je 0x423ce1
cmp dword [esp + 0x44], 0
je 0x423a8f
test al, al
je 0x423a9f
cmp dword [esp + 0x48], 0
mov dword [esp], 3
jne 0x423ce1
mov eax, 1
jmp 0x423ae8
mov edi, 0x2c0
mov ecx, edi
mov edx, 0x2c0
push 0x7da480
call fcn.007c1be0
mov edx, dword [esp + 4]
mov ecx, dword [esp + 0x34]
cmp edx, ecx
cmova ecx, edx
push 0x7da4f0
call fcn.007c1be0
mov ecx, esi
mov edx, 0x2c0
push 0x7da4c0
call fcn.007c1be0
mov edi, 0x2c0
mov ecx, edi
mov edx, 0x2c0
push 0x7da4b0
call fcn.007c1be0
mov ecx, dword [esp + 4]
mov edx, ecx
push 0x7da450
call fcn.007c1be0
xor al, 1
cmp dword [esp + 0x48], 0
movzx eax, al
je 0x423ac7
test eax, eax
je 0x423adc
mov dword [esp], ecx
jmp 0x423ce1
mov ecx, edi
mov edx, 0x2c0
push 0x7da490
call fcn.007c1be0
mov edx, dword [esp + 4]
dec ecx
push 0x7da4d0
call fcn.007c1be0
mov dword [esp], ecx
jmp 0x423ae8
mov edx, dword [esp + 4]
mov ecx, eax
push 0x7da4e0
call fcn.007c1be0
mov eax, 1
mov dword [esp], 4
cmp dword [esp + 0x4c], 0
je 0x423b10
test eax, eax
jne 0x423ce1
cmp dword [esp + 0x50], 0
mov dword [esp], 5
jne 0x423ce1
mov eax, 1
jmp 0x423b2b
cmp dword [esp + 0x50], 0
je 0x423b2b
test eax, eax
jne 0x423ce1
mov eax, 1
mov dword [esp], 6
cmp dword [esp + 0x54], 0
je 0x423b86
test eax, eax
jne 0x423ce1
cmp dword [esp + 0x58], 0
mov dword [esp], 7
jne 0x423ce1
mov eax, 1
jmp 0x423ba1
mov ecx, 0x2c0
mov edx, 0x2c0
push 0x7d971c
call fcn.007c1be0
mov edx, 0x12
push 0x7d972c
call fcn.007c1be0
mov edx, dword [esp + 4]
mov ecx, eax
push 0x7da440
call fcn.007c1be0
cmp dword [esp + 0x58], 0
je 0x423ba1
test eax, eax
jne 0x423ce1
mov eax, 1
mov dword [esp], 8
cmp dword [esp + 0x5c], 0
je 0x423beb
test eax, eax
jne 0x423ce1
cmp dword [esp + 0x60], 0
mov dword [esp], 9
jne 0x423ce1
mov eax, 1
jmp 0x423c06
mov ecx, edi
mov edx, 0x2c0
push 0x7da460
call fcn.007c1be0
mov ecx, edi
mov edx, 0x2c0
push 0x7da470
call fcn.007c1be0
cmp dword [esp + 0x60], 0
je 0x423c06
test eax, eax
jne 0x423ce1
mov eax, 1
mov dword [esp], 0xa
cmp dword [esp + 0x64], 0
je 0x423c3f
test eax, eax
jne 0x423ce1
cmp dword [esp + 0x68], 0
mov dword [esp], 0xb
jne 0x423ce1
mov eax, 1
jmp 0x423c5a
mov ecx, edi
mov edx, 0x2c0
push 0x7da4a0
call fcn.007c1be0
cmp dword [esp + 0x68], 0
je 0x423c5a
test eax, eax
jne 0x423ce1
mov eax, 1
mov dword [esp], 0xc
cmp dword [esp + 0x6c], 0
je 0x423c7a
test eax, eax
jne 0x423ce1
cmp dword [esp + 0x70], 0
mov dword [esp], 0xd
jne 0x423ce1
mov eax, 1
jmp 0x423c91
cmp dword [esp + 0x70], 0
je 0x423c91
test eax, eax
jne 0x423ce1
mov eax, 1
mov dword [esp], 0xe
cmp dword [esp + 0x74], 0
je 0x423cb1
test eax, eax
jne 0x423ce1
cmp dword [esp + 0x78], 0
mov dword [esp], 0xf
jne 0x423ce1
mov eax, 1
jmp 0x423cc8
cmp dword [esp + 0x78], 0
je 0x423cc8
test eax, eax
jne 0x423ce1
mov eax, 1
mov dword [esp], 0x10
cmp dword [esp + 0x7c], 0
je 0x423cdf
test eax, eax
jne 0x423ce1
mov eax, 1
mov dword [esp], 0x11
mov ebp, eax
lea edi, [esp + 0x1c]
lea ecx, [esp + 0x38]
mov dword [esp + 4], 0x12
mov edx, 0x12
push 0x12
push edi
push dword [esp + 0x648]
push dword [esp + 0x648]
push 5
push 0x12
call fcn.00424030
add esp, 0x18
lea eax, [esp + 0x80]
mov ecx, edi
mov edx, 0x12
push 0x12
push eax
push 0x12
call fcn.004246e0
add esp, 0xc
cmp ebp, 2
mov dword [esp + 0xc], 0
mov byte [esp + 8], bl
mov dword [esp + 0x14], ebp
jb 0x423e70
cmp byte [esp + 0x2b], 0
jne 0x423e70
cmp byte [esp + 0x2a], 0
mov dword [esp + 4], 0x11
jne 0x423e70
cmp byte [esp + 0x29], 0
mov dword [esp + 4], 0x10
jne 0x423e70
cmp byte [esp + 0x28], 0
mov dword [esp + 4], 0xf
jne 0x423e70
cmp byte [esp + 0x27], 0
mov dword [esp + 4], 0xe
jne 0x423e70
cmp byte [esp + 0x26], 0
mov dword [esp + 4], 0xd
jne 0x423e70
cmp byte [esp + 0x25], 0
mov dword [esp + 4], 0xc
jne 0x423e70
cmp byte [esp + 0x24], 0
mov dword [esp + 4], 0xb
jne 0x423e70
cmp byte [esp + 0x23], 0
mov dword [esp + 4], 0xa
jne 0x423e70
cmp byte [esp + 0x2c], 0
mov dword [esp + 4], 9
jne 0x423e70
cmp byte [esp + 0x22], 0
mov dword [esp + 4], 8
jne 0x423e70
cmp byte [esp + 0x2d], 0
mov dword [esp + 4], 7
jne 0x423e70
cmp byte [esp + 0x21], 0
mov dword [esp + 4], 6
jne 0x423e70
cmp byte [esp + 0x1c], 0
mov dword [esp + 4], 5
jne 0x423e70
cmp byte [esp + 0x20], 0
mov dword [esp + 4], 4
jne 0x423e70
cmp byte [esp + 0x1f], 0
mov dword [esp + 4], 3
jne 0x423e70
cmp byte [esp + 0x1e], 0
mov dword [esp + 4], 2
jne 0x423e70
xor eax, eax
cmp byte [esp + 0x1d], 0
setne al
mov dword [esp + 4], eax
mov edi, dword [esp + 0xc]
movzx eax, byte [esp + 0x1d]
cmp byte [esp + 0x1f], 1
mov ecx, 2
mov ebx, edi
adc ebx, 2
or al, byte [esp + 0x1e]
cmovne ebx, edi
mov edx, ebx
push dword [esp + 0x64c]
push dword [esp + 0x64c]
push dword [esp + 0x64c]
push 0
call fcn.00422fc0
add esp, 0x10
cmp ebx, dword [esp + 4]
mov eax, edi
sbb eax, edi
jae 0x423f28
mov ebp, dword [esp + 0xc]
mov edi, ebx
add edi, 1
adc ebp, 0
cmp ebx, 0x11
ja 0x423fd7
movzx ecx, byte [ebx + 0x7d96dc]
cmp ecx, 0x12
jae 0x423feb
movzx ecx, byte [esp + ecx + 0x1c]
cmp ecx, 6
jae 0x423ffa
movzx edx, byte [ecx + 0x7d96ee]
movzx ecx, byte [ecx + 0x7d96f4]
push dword [esp + 0x64c]
push dword [esp + 0x64c]
push dword [esp + 0x64c]
push 0
call fcn.00422fc0
add esp, 0x10
cmp edi, dword [esp + 4]
mov eax, ebp
mov ebx, edi
sbb eax, dword [esp + 0xc]
jb 0x423ec0
cmp dword [esp + 0x14], 1
jne 0x423f37
mov eax, dword [esp]
mov byte [esp + eax + 0x1c], 0
cmp byte [esp + 8], 0
mov ebp, dword [esp + 0x64c]
je 0x423f50
add esp, 0x624
pop esi
pop edi
pop ebx
pop ebp
ret
neg esi
mov ebx, 0xfffffd40
jmp 0x423f92
mov al, 3
movzx edx, byte [esp + ebx + 0x624]
movzx ecx, al
push ebp
push dword [esp + 0x64c]
push dword [esp + 0x64c]
push 0
call fcn.00422fc0
add esp, 0x10
lea eax, [esi + ebx + 1]
inc ebx
cmp eax, 0xfffffd40
je 0x423f45
test ebx, ebx
je 0x424009
movzx edi, byte [esp + ebx + 0x364]
cmp edi, 0x12
jae 0x42401d
movzx edx, word [esp + edi*2 + 0x80]
movzx ecx, byte [esp + edi + 0x1c]
push ebp
push dword [esp + 0x64c]
push dword [esp + 0x64c]
push 0
call fcn.00422fc0
add esp, 0x10
cmp edi, 0x11
je 0x423f60
cmp edi, 0x10
jne 0x423f86
mov al, 2
jmp 0x423f62
mov ecx, 0x12
mov edx, 0x12
push 0x7d96ac
call fcn.007c1be0
mov edx, 0x12
push 0x7d96bc
call fcn.007c1be0
mov edx, 6
push 0x7d96cc
call fcn.007c1be0
mov ecx, 0x2c0
mov edx, 0x2c0
push 0x7d96fc
call fcn.007c1be0
mov ecx, edi
mov edx, 0x12
push 0x7d970c
call fcn.007c1be0
int3