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

Disassembly:
push 0xffffffffffffffff
push 0x44a248
mov eax, dword fs:[0]
push eax
sub esp, 0x5c
mov eax, dword [0x4584a0]
xor eax, esp
mov dword [esp + 0x58], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4584a0]
xor eax, esp
push eax
lea eax, [esp + 0x70]
mov dword fs:[0], eax
mov eax, dword [esp + 0x80]
cmp eax, 0xfffffffe
mov esi, dword [esp + 0x90]
mov ebp, edx
mov ebx, ecx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x28], esi
lea edi, [ebp + 0x20]
je 0x4272a1
test eax, eax
je 0x427295
cmp eax, dword [esp + 0x88]
je 0x4272a1
call fcn.0042ebb0
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x84]
cmp ecx, dword [esp + 0x8c]
jne 0x4272bd
mov dword [ebx], eax
mov dword [ebx + 4], ecx
mov eax, ebx
jmp 0x427a32
cmp dword [ebp + 8], 0
mov ebx, dword [esi]
mov dword [esp + 0x24], ebx
mov dword [esp + 0x18], 0
jbe 0x427470
jmp 0x4272e0
cmp byte [edi], 0
mov ebp, dword [esp + 0x84]
mov esi, eax
mov dword [esp + 0x2c], esi
mov dword [esp + 0x30], ebp
jne 0x427370
cmp eax, 0xfffffffe
je 0x42732e
test eax, eax
jne 0x42730b
call fcn.0042ebb0
mov eax, dword [esp + 0x80]
cmp dword [esi + 0x18], 0x10
jb 0x427316
mov ecx, dword [esi + 4]
jmp 0x427319
lea ecx, [esi + 4]
mov edx, dword [esi + 0x14]
add edx, ecx
cmp ebp, edx
jb 0x42732e
call fcn.0042ebb0
mov eax, dword [esp + 0x80]
cmp byte [esp + 0x94], 0
mov cl, byte [ebp]
je 0x427347
mov edx, dword [ebx]
movzx ecx, cl
mov cl, byte [ecx + edx + 0x104]
mov dl, byte [edi]
cmp cl, dl
je 0x427494
test dl, dl
jne 0x427458
lea esp, [esp]
add edi, 1
cmp byte [edi], 0
je 0x427360
jmp 0x427458
cmp esi, 0xfffffffe
je 0x427387
test esi, esi
je 0x427382
cmp esi, dword [esp + 0x88]
je 0x427387
call fcn.0042ebb0
cmp ebp, dword [esp + 0x8c]
je 0x42743f
cmp esi, 0xfffffffe
je 0x4273be
test esi, esi
jne 0x4273a2
call fcn.0042ebb0
cmp dword [esi + 0x18], 0x10
jb 0x4273ad
mov eax, dword [esi + 4]
jmp 0x4273b0
lea eax, [esi + 4]
mov edx, dword [esi + 0x14]
add edx, eax
cmp ebp, edx
jb 0x4273be
call fcn.0042ebb0
cmp byte [esp + 0x94], 0
mov al, byte [ebp]
je 0x4273d7
mov ecx, dword [ebx]
movzx eax, al
mov al, byte [eax + ecx + 0x104]
cmp al, byte [edi]
jne 0x42743f
add edi, 1
cmp esi, 0xfffffffe
je 0x427408
test esi, esi
jne 0x4273ec
call fcn.0042ebb0
cmp dword [esi + 0x18], 0x10
jb 0x4273f7
mov eax, dword [esi + 4]
jmp 0x4273fa
lea eax, [esi + 4]
mov ecx, dword [esi + 0x14]
add ecx, eax
cmp ebp, ecx
jb 0x427408
call fcn.0042ebb0
add ebp, 1
cmp byte [edi], 0
mov dword [esp + 0x30], ebp
jne 0x427370
mov ecx, dword [esp + 0x1c]
cmp byte [ecx + 0x1c], 0
jne 0x42749e
cmp esi, 0xfffffffe
je 0x4274c7
test esi, esi
je 0x4274c2
cmp esi, dword [esp + 0x80]
jmp 0x4274c0
cmp byte [edi], 0
je 0x427418
mov eax, edi
add eax, 1
cmp byte [eax], 0
jne 0x427446
lea edi, [eax + 1]
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
add ecx, 1
cmp ecx, dword [edx + 8]
mov dword [esp + 0x18], ecx
jb 0x4272e0
cmp eax, 0xfffffffe
je 0x42751d
test eax, eax
jne 0x427489
call fcn.0042ebb0
mov eax, dword [esp + 0x80]
cmp dword [eax + 0x18], 0x10
jb 0x427500
mov ecx, dword [eax + 4]
jmp 0x427503
mov ecx, dword [esp + 0x1c]
cmp byte [ecx + 0x1c], 0
je 0x4274b5
mov ecx, dword [esp + 0x20]
lea eax, [esp + 0x80]
mov edx, dword [eax]
mov dword [ecx], edx
mov eax, dword [eax + 4]
jmp 0x427a2d
cmp esi, 0xfffffffe
je 0x4274c7
test esi, esi
je 0x4274c2
cmp esi, eax
je 0x4274c7
call fcn.0042ebb0
cmp ebp, dword [esp + 0x84]
jne 0x4274ec
lea ecx, [esp + 0x80]
call fcn.00401720
mov edx, dword [eax]
mov ecx, dword [esp + 0x20]
mov dword [ecx], edx
mov eax, dword [eax + 4]
jmp 0x427a2d
mov ecx, dword [esp + 0x20]
lea eax, [esp + 0x2c]
mov edx, dword [eax]
mov dword [ecx], edx
mov eax, dword [eax + 4]
jmp 0x427a2d
lea ecx, [eax + 4]
mov edx, dword [eax + 0x14]
add edx, ecx
cmp dword [esp + 0x84], edx
jb 0x42751d
call fcn.0042ebb0
mov eax, dword [esp + 0x80]
cmp byte [esp + 0x94], 0
mov ecx, dword [esp + 0x84]
mov cl, byte [ecx]
je 0x427544
mov edx, ebx
mov edx, dword [edx]
movzx ecx, cl
mov bl, byte [ecx + edx + 0x104]
mov byte [esp + 0x17], bl
jmp 0x42754a
mov byte [esp + 0x17], cl
mov bl, cl
mov esi, dword [esp + 0x1c]
mov ecx, dword [esi + 0xc]
test ecx, ecx
jne 0x42755e
cmp dword [esi + 0x10], ecx
je 0x427842
xor edx, edx
mov dword [esp + 0x68], 0xf
mov dword [esp + 0x64], edx
mov byte [esp + 0x54], dl
cmp ecx, edx
mov dword [esp + 0x78], edx
je 0x42771e
mov edx, dword [esp + 0x28]
test dword [edx + 8], 0x200000
jne 0x42759d
mov ebp, 1
mov byte [esp + 0x54], bl
mov dword [esp + 0x64], ebp
mov byte [esp + 0x55], 0
jmp 0x4275f8
lea eax, [esp + 0x19]
push eax
lea ecx, [esp + 0x1c]
push ecx
mov ecx, dword [esp + 0x2c]
lea edx, [esp + 0x3c]
push edx
mov byte [esp + 0x24], bl
mov byte [esp + 0x25], 0
call fcn.0041f4a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x5c]
mov byte [esp + 0x84], 1
call fcn.004034d0
cmp dword [esp + 0x4c], 0x10
mov byte [esp + 0x78], 0
jb 0x4275ed
mov eax, dword [esp + 0x38]
push eax
call fcn.0042e7ab
add esp, 4
mov ebp, dword [esp + 0x64]
mov eax, dword [esp + 0x80]
cmp dword [esi + 0xc], 0
mov dword [esp + 0x18], 0
jbe 0x42771e
mov ebx, dword [esp + 0x54]
mov edi, edi
cmp byte [edi], 0
jne 0x427630
test ebp, ebp
je 0x427673
cmp ebp, 1
jne 0x427630
cmp dword [esp + 0x68], 0x10
mov eax, ebx
jae 0x42762b
lea eax, [esp + 0x54]
cmp byte [eax], 0
je 0x427673
mov eax, edi
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x427635
sub eax, edx
mov esi, eax
cmp ebp, esi
mov ecx, ebp
jb 0x42764a
mov ecx, esi
cmp dword [esp + 0x68], 0x10
mov eax, ebx
jae 0x427657
lea eax, [esp + 0x54]
push ecx
push edi
push eax
call fcn.00401040
add esp, 0xc
test eax, eax
jne 0x427671
cmp ebp, esi
jb 0x4276e0
cmp ebp, esi
setne al
test eax, eax
jl 0x4276e0
add edi, 1
cmp byte [edi], 0
jne 0x427673
add edi, 1
cmp byte [edi], 0
jne 0x4276a6
test ebp, ebp
je 0x427890
cmp ebp, 1
jne 0x4276a6
cmp dword [esp + 0x68], 0x10
mov eax, ebx
jae 0x42769d
lea eax, [esp + 0x54]
cmp byte [eax], 0
je 0x427890
mov eax, edi
lea edx, [eax + 1]
jmp 0x4276b0
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x4276b0
sub eax, edx
push eax
push edi
push ebp
push 0
lea ecx, [esp + 0x60]
call fcn.00401e90
test eax, eax
mov ebx, dword [esp + 0x54]
jle 0x427890
mov ebp, dword [esp + 0x64]
jmp 0x4276f0
add edi, 1
cmp byte [edi], 0
jne 0x4276e0
add edi, 1
jmp 0x4276f0
add edi, 1
cmp byte [edi], 0
jne 0x4276f0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
add eax, 1
add edi, 1
cmp eax, dword [ecx + 0xc]
mov dword [esp + 0x18], eax
jb 0x427610
mov eax, dword [esp + 0x80]
mov bl, byte [esp + 0x17]
mov ecx, dword [esp + 0x1c]
cmp dword [ecx + 0x10], 0
je 0x427827
lea edx, [esp + 0x19]
push edx
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x3c]
push ecx
mov ecx, dword [esp + 0x30]
mov byte [esp + 0x24], bl
mov byte [esp + 0x25], 0
call fcn.00423a10
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x5c]
mov byte [esp + 0x84], 2
call fcn.004034d0
cmp dword [esp + 0x4c], 0x10
jb 0x427777
mov edx, dword [esp + 0x38]
push edx
call fcn.0042e7ab
add esp, 4
mov eax, dword [esp + 0x1c]
mov eax, dword [eax + 0x10]
xor ebx, ebx
test eax, eax
mov dword [esp + 0x28], eax
jbe 0x42781c
mov ebp, dword [esp + 0x64]
cmp byte [edi], 0
jne 0x4277ba
test ebp, ebp
je 0x427915
cmp ebp, 1
jne 0x4277ba
cmp dword [esp + 0x68], 0x10
mov eax, dword [esp + 0x54]
jae 0x4277b1
lea eax, [esp + 0x54]
cmp byte [eax], 0
je 0x427915
mov eax, edi
lea edx, [eax + 1]
nop
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x4277c0
sub eax, edx
mov esi, eax
cmp ebp, esi
mov ecx, ebp
jb 0x4277d5
mov ecx, esi
cmp dword [esp + 0x68], 0x10
mov eax, dword [esp + 0x54]
jae 0x4277e4
lea eax, [esp + 0x54]
push ecx
push edi
push eax
call fcn.00401040
add esp, 0xc
test eax, eax
jne 0x427804
cmp ebp, esi
jb 0x427804
cmp ebp, esi
setne al
test eax, eax
je 0x427915
add edi, 1
cmp byte [edi], 0
jne 0x427804
add ebx, 1
add edi, 1
cmp ebx, dword [esp + 0x28]
jb 0x427790
mov bl, byte [esp + 0x17]
mov eax, dword [esp + 0x80]
cmp dword [esp + 0x68], 0x10
jb 0x427842
mov edx, dword [esp + 0x54]
push edx
call fcn.0042e7ab
mov eax, dword [esp + 0x84]
add esp, 4
mov esi, dword [esp + 0x1c]
mov ecx, dword [esi + 0x14]
test ecx, 0x3ff
je 0x42786c
mov edi, dword [esp + 0x24]
mov edi, dword [edi]
movzx edx, bl
movzx edx, word [edi + edx*2 + 0x204]
and edx, ecx
test edx, 0x3ff
jne 0x427881
test ecx, 0x400
je 0x427996
cmp bl, 0x5f
jne 0x427996
cmp byte [esi + 0x1c], 0
jne 0x427a20
jmp 0x4279db
mov edx, dword [esp + 0x1c]
cmp byte [edx + 0x1c], 0
mov eax, dword [esp + 0x80]
jne 0x4278ee
cmp eax, 0xfffffffe
je 0x4278e6
test eax, eax
jne 0x4278ba
call fcn.0042ebb0
mov eax, dword [esp + 0x80]
mov ebx, dword [esp + 0x54]
cmp dword [eax + 0x18], 0x10
jb 0x4278c5
mov ecx, dword [eax + 4]
jmp 0x4278c8
lea ecx, [eax + 4]
mov edx, dword [eax + 0x14]
add edx, ecx
cmp dword [esp + 0x84], edx
jb 0x4278e6
call fcn.0042ebb0
mov eax, dword [esp + 0x80]
mov ebx, dword [esp + 0x54]
add dword [esp + 0x84], 1
cmp dword [esp + 0x68], 0x10
mov esi, dword [esp + 0x20]
mov dword [esi], eax
mov eax, dword [esp + 0x84]
mov dword [esi + 4], eax
jb 0x42790e
push ebx
call fcn.0042e7ab
add esp, 4
mov eax, esi
jmp 0x427a32
mov ecx, dword [esp + 0x1c]
cmp byte [ecx + 0x1c], 0
mov eax, dword [esp + 0x80]
jne 0x42796b
cmp eax, 0xfffffffe
je 0x427963
test eax, eax
jne 0x42793b
call fcn.0042ebb0
mov eax, dword [esp + 0x80]
cmp dword [eax + 0x18], 0x10
jb 0x427946
mov ecx, dword [eax + 4]
jmp 0x427949
lea ecx, [eax + 4]
mov edx, dword [eax + 0x14]
add edx, ecx
cmp dword [esp + 0x84], edx
jb 0x427963
call fcn.0042ebb0
mov eax, dword [esp + 0x80]
add dword [esp + 0x84], 1
cmp dword [esp + 0x68], 0x10
mov esi, dword [esp + 0x20]
mov dword [esi], eax
mov eax, dword [esp + 0x84]
mov dword [esi + 4], eax
jb 0x42790e
mov ecx, dword [esp + 0x54]
push ecx
call fcn.0042e7ab
add esp, 4
mov eax, esi
jmp 0x427a32
mov ecx, dword [esi + 0x18]
test ecx, ecx
je 0x4279d5
test ecx, 0x3ff
je 0x4279c0
mov edi, dword [esp + 0x24]
mov edi, dword [edi]
movzx edx, bl
movzx edx, word [edi + edx*2 + 0x204]
and edx, ecx
test edx, 0x3ff
jne 0x4279d5
test ecx, 0x400
je 0x4279cd
cmp bl, 0x5f
je 0x4279d5
cmp byte [esi + 0x1c], 0
jne 0x427a20
jmp 0x4279db
cmp byte [esi + 0x1c], 0
je 0x427a20
cmp eax, 0xfffffffe
je 0x427a18
test eax, eax
jne 0x4279f0
call fcn.0042ebb0
mov eax, dword [esp + 0x80]
cmp dword [eax + 0x18], 0x10
jb 0x4279fb
mov ecx, dword [eax + 4]
jmp 0x4279fe
lea ecx, [eax + 4]
mov edx, dword [eax + 0x14]
add edx, ecx
cmp dword [esp + 0x84], edx
jb 0x427a18
call fcn.0042ebb0
mov eax, dword [esp + 0x80]
add dword [esp + 0x84], 1
mov ecx, dword [esp + 0x20]
mov dword [ecx], eax
mov eax, dword [esp + 0x84]
mov dword [ecx + 4], eax
mov eax, ecx
mov ecx, dword [esp + 0x70]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x58]
xor ecx, esp
call fcn.0042ea4d
add esp, 0x68
ret 0x18