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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xac
push ebx
mov ebx, dword [ebp + 8]
push esi
mov esi, dword [ebp + 0xc]
mov eax, dword [esi]
push edi
mov edi, ecx
mov ecx, dword [ebx + 4]
mov eax, dword [ecx + eax*4]
mov eax, dword [eax]
mov eax, dword [eax]
lea ecx, [esp + 0x78]
push ecx
lea ecx, [esp + 0x90]
push ecx
lea ecx, [esp + 0x38]
push ecx
lea ecx, [esp + 0x70]
push ecx
push eax
push edi
mov dword [esp + 0x2c], edi
call fcn.0042c522
test al, al
jne 0x42c5ca
push dword [ebp + 0x10]
mov eax, esi
push edi
mov ecx, ebx
call fcn.0042cc64
jmp 0x42cc5b
mov eax, dword [esi]
mov edx, dword [edi + 0x340]
mov ecx, dword [ebx + 4]
mov ecx, dword [ecx + eax*4]
movsx ecx, word [ecx + 0xa]
xor edi, edi
inc eax
mov dword [esi], eax
mov dword [esp + 0x7c], edx
mov edx, dword [ebx + 4]
mov dword [esp + 0x38], edi
mov dword [esp + 0x40], 1
mov dword [esp + 0x44], edi
mov edx, dword [edx + eax*4]
cmp word [edx + 8], 0x47
mov dword [esp + 0x78], ecx
mov dword [esp + 0x4c], 0x46d4c0
mov dword [esp + 0x50], edi
mov dword [esp + 0x54], edi
mov dword [esp + 0x58], edi
mov dword [esp + 0x60], edi
je 0x42c626
push ecx
push 0x6f
jmp 0x42cc3d
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x1c]
push eax
push dword [esp + 0x18]
mov eax, esi
lea edx, [esp + 0x20]
mov esi, ebx
call fcn.0042c4c4
test eax, eax
jne 0x42cc46
mov eax, dword [esp + 0x64]
call fcn.00409eba
cmp dword [esp + 0x30], edi
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x28], eax
mov dword [esp + 0x10], 3
mov dword [esp + 0x2c], edi
mov dword [esp + 0x24], edi
jle 0x42c832
cmp ecx, dword [esp + 0x1c]
jae 0x42c832
mov eax, dword [esp + 0x28]
mov esi, dword [esp + 0x10]
mov eax, dword [eax + 4]
inc dword [esp + 0x2c]
lea eax, [eax + esi*4]
mov esi, dword [eax]
xor dl, dl
cmp word [esi + 8], di
mov dword [esp + 0x34], edi
jne 0x42c77d
mov esi, eax
mov eax, dword [esi]
mov eax, dword [eax]
cmp eax, 0x23
jne 0x42c6b4
mov dl, 1
jmp 0x42c6c5
cmp eax, 0x1e
jne 0x42c8cf
mov dword [esp + 0x34], pe_nt_image_headers32
inc dword [esp + 0x10]
add esi, 4
mov eax, dword [esi]
cmp word [eax + 8], di
je 0x42c6a7
test dl, dl
je 0x42c77d
mov eax, dword [ebx + 4]
mov eax, dword [eax + ecx*4]
cmp word [eax + 8], 0x33
jne 0x42c8db
mov edi, dword [eax]
lea ecx, [esp + 0x5c]
push ecx
xor ecx, ecx
lea esi, [esp + 0x64]
call fcn.004109f0
test al, al
je 0x42c8e8
mov eax, pe_nt_image_headers32
test dword [esp + 0x60], eax
je 0x42c71c
test dword [esp + 0x34], eax
je 0x42c8fe
inc dword [esp + 0x18]
mov esi, dword [esp + 0x5c]
inc dword [esp + 0x10]
cmp dword [esi + 8], 5
jne 0x42c760
mov eax, dword [ebx + 4]
mov ecx, dword [esp + 0x18]
mov eax, dword [eax + ecx*4]
cmp word [eax + 8], 0x4e
jne 0x42c760
call fcn.00412e06
lea eax, [esp + 0x5c]
push eax
push dword [esp + 0x18]
lea eax, [esp + 0x20]
mov ecx, ebx
call fcn.0043051b
test eax, eax
jne 0x42cc46
push dword [esp + 0x5c]
lea esi, [esp + 0x3c]
call fcn.00413c1b
mov eax, esi
push eax
lea esi, [esp + 0x50]
call fcn.00411cb4
xor edi, edi
jmp 0x42c7d9
push edi
lea esi, [esp + 0x3c]
call fcn.00413545
mov eax, esi
push eax
lea esi, [esp + 0x50]
call fcn.00411cb4
push dword [esp + 0x1c]
mov ecx, dword [esp + 0x54]
mov eax, dword [esp + 0x58]
mov eax, dword [ecx + eax*4 - 4]
mov ecx, dword [esp + 0x18]
push eax
lea eax, [esp + 0x20]
push eax
push ebx
call fcn.0043112d
test eax, eax
jne 0x42cc46
inc dword [esp + 0x10]
mov eax, dword [esp + 0x28]
mov eax, dword [eax + 4]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + ecx*4]
cmp word [eax + 8], 0x41
jne 0x42c7d9
add dword [esp + 0x10], 2
mov ecx, dword [esp + 0x18]
cmp ecx, dword [esp + 0x1c]
je 0x42c832
mov eax, dword [ebx + 4]
mov eax, dword [eax + ecx*4]
cmp word [eax + 8], 0x40
jne 0x42c917
lea eax, [ecx + 1]
cmp eax, dword [esp + 0x1c]
je 0x42c917
mov edx, dword [esp + 0x10]
mov ecx, eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x18], ecx
mov eax, dword [eax + 4]
mov eax, dword [eax + edx*4]
cmp word [eax + 8], 0x40
jne 0x42c820
inc dword [esp + 0x10]
inc dword [esp + 0x24]
mov eax, dword [esp + 0x24]
cmp eax, dword [esp + 0x30]
jl 0x42c677
mov eax, dword [esp + 0x2c]
cmp eax, dword [esp + 0x8c]
jl 0x42cc37
cmp eax, dword [esp + 0x30]
jg 0x42cc37
cmp ecx, dword [esp + 0x1c]
jne 0x42cc37
push 3
pop ebx
call fcn.00410a4d
xor ecx, ecx
inc ecx
cmp dword [esp + 0x30], ecx
mov dword [esp + 0x24], ecx
jl 0x42c9c3
mov eax, dword [esp + 0x50]
mov dword [esp + 0x1c], eax
mov edx, dword [esp + 0x28]
mov eax, dword [edx + 4]
or word [esp + 0x88], 0xffff
mov dword [esp + 0x68], 0x46ca88
mov dword [esp + 0x6c], edi
mov dword [esp + 0x70], edi
mov dword [esp + 0x74], edi
mov dword [esp + 0x34], edi
lea ecx, [eax + ebx*4]
mov esi, dword [ecx]
cmp word [esi + 8], 0
mov word [esp + 0x8a], di
mov byte [esp + 0x23], 0
jne 0x42ca5b
mov esi, ecx
mov ecx, dword [esi]
mov ecx, dword [ecx]
cmp ecx, 0x23
jne 0x42c927
mov byte [esp + 0x23], 1
jmp 0x42c931
push 0xffffffffffffffff
push 0x91
jmp 0x42cc3d
mov eax, dword [ebx + 4]
mov eax, dword [eax + ecx*4]
movsx eax, word [eax + 0xa]
push eax
jmp 0x42c8d1
mov eax, dword [ebx + 4]
mov ecx, dword [esp + 0x18]
mov eax, dword [eax + ecx*4]
movsx eax, word [eax + 0xa]
push eax
push 0x79
jmp 0x42cc3d
mov eax, dword [ebx + 4]
mov ecx, dword [esp + 0x18]
mov eax, dword [eax + ecx*4]
movsx eax, word [eax + 0xa]
push eax
push 0xb0
jmp 0x42cc3d
mov eax, dword [ebx + 4]
mov eax, dword [eax + ecx*4]
movsx eax, word [eax + 0xa]
push eax
jmp 0x42c61f
cmp ecx, 0x1e
jne 0x42c935
mov edi, pe_nt_image_headers32
inc ebx
add esi, 4
mov ecx, dword [esi]
cmp word [ecx + 8], 0
je 0x42c8bf
cmp byte [esp + 0x23], 0
je 0x42ca5b
mov ecx, dword [esp + 0x1c]
mov ecx, dword [ecx]
cmp dword [ecx + 8], 6
jne 0x42c959
mov ecx, dword [ecx]
jmp 0x42c95b
xor ecx, ecx
cmp dword [0x48b460], 0
mov eax, dword [eax + ebx*4]
mov esi, dword [eax]
je 0x42cb77
test ecx, ecx
je 0x42cb77
push ecx
mov eax, 0x48b460
or edi, 0x200
call fcn.0042fdf1
push eax
mov eax, edi
mov ecx, esi
call fcn.004129f8
inc ebx
inc ebx
lea ecx, [esp + 0x80]
call fcn.0041271f
lea ecx, [esp + 0x68]
call fcn.00409d64
inc dword [esp + 0x24]
mov eax, dword [esp + 0x24]
add dword [esp + 0x1c], 4
xor edi, edi
cmp eax, dword [esp + 0x30]
jle 0x42c878
xor ecx, ecx
inc ecx
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x90], edi
mov dword [esp + 0x9c], edi
mov dword [esp + 0xa4], edi
mov dword [esp + 0xac], edi
lea edi, [eax + 0x320]
lea esi, [esp + 0x90]
mov dword [eax + 0x340], edx
mov dword [esp + 0x98], ecx
mov byte [esp + 0xa0], 0
mov byte [esp + 0xa8], 0
mov byte [esp + 0xb0], 0
call fcn.0041d479
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x14]
push 0
inc eax
push eax
call fcn.0041d0c4
mov eax, edi
call fcn.0041d547
cmp byte [eax + 0x10], 0
mov eax, dword [ebp + 0x14]
je 0x42cba7
mov byte [eax], 1
mov eax, edi
call fcn.0041d547
mov ebx, dword [ebp + 0x10]
push eax
call fcn.00413391
jmp 0x42cbb4
mov ecx, dword [esp + 0x24]
cmp ecx, dword [esp + 0x2c]
jle 0x42cb22
lea esi, [esp + 0x68]
call fcn.00409df7
mov eax, dword [esp + 0x28]
and dword [esp + 0x34], 0
mov eax, dword [eax + 4]
mov eax, dword [eax + ebx*4 + 8]
movzx ecx, word [eax + 8]
cmp cx, 0x4a
je 0x42ca95
cmp cx, 0x49
je 0x42ca95
push eax
jmp 0x42caaa
push eax
lea esi, [esp + 0x6c]
call fcn.00409d7d
mov eax, dword [esp + 0x28]
mov eax, dword [eax + 4]
push dword [eax + ebx*4 + 0xc]
lea esi, [esp + 0x6c]
call fcn.00409d7d
push 0x7f
lea esi, [esp + 0x84]
call fcn.00412786
mov eax, esi
push eax
lea esi, [esp + 0x6c]
call fcn.00409d7d
mov ecx, dword [esp + 0x14]
push 0xffffffffffffffff
lea eax, [esp + 0x3c]
push eax
lea eax, [esp + 0x3c]
push eax
mov eax, esi
push eax
call fcn.0043112d
mov eax, dword [esp + 0x28]
mov eax, dword [eax + 4]
mov eax, dword [eax + ebx*4]
mov esi, dword [eax]
or edi, 0x200
cmp dword [0x48b460], 0
lea eax, [esp + 0x38]
push eax
jne 0x42cb0c
push 0x48b45c
jmp 0x42cb17
mov eax, 0x48b460
call fcn.0042fdf1
push eax
mov eax, edi
mov ecx, esi
call fcn.00412973
jmp 0x42cb3d
mov edx, dword [eax + ebx*4]
mov ecx, dword [esp + 0x1c]
mov ecx, dword [ecx]
mov esi, edi
mov edi, dword [edx]
xor eax, eax
or esi, 0x200
inc eax
call fcn.004109bc
mov eax, dword [esp + 0x28]
mov eax, dword [eax + 4]
mov ecx, dword [eax + ebx*4 + 4]
cmp word [ecx + 8], 0x41
jne 0x42c990
mov eax, dword [eax + ebx*4 + 8]
movzx eax, word [eax + 8]
cmp ax, 0x4a
je 0x42cb6f
cmp ax, 0x49
je 0x42cb6f
add ebx, 4
jmp 0x42c992
add ebx, 5
jmp 0x42c992
mov eax, dword [edx + 4]
mov eax, dword [eax + ebx*4]
movsx eax, word [eax + 0xa]
mov ebx, dword [esp + 0x14]
push eax
push 0x79
call fcn.0041bb76
lea ecx, [esp + 0x80]
call fcn.0041271f
lea ecx, [esp + 0x68]
call fcn.00409d64
jmp 0x42cc46
mov esi, dword [ebp + 0x10]
push 0
mov byte [eax], 0
call fcn.00413545
mov eax, edi
call fcn.0041d547
cmp byte [eax + 0x18], 0
je 0x42cbcb
mov ecx, dword [eax + 0x14]
mov dword [esp + 0xa4], ecx
cmp byte [eax + 0x20], 0
je 0x42cbdb
mov eax, dword [eax + 0x1c]
mov dword [esp + 0xac], eax
mov esi, edi
call fcn.0041d4f0
mov esi, dword [esp + 0x14]
push 0
push dword [esp + 0xa8]
mov eax, esi
call fcn.0041d3b4
push 0
push dword [esp + 0xb0]
mov eax, esi
call fcn.0041d3e7
call fcn.00410aa5
mov eax, dword [esp + 0x7c]
lea ecx, [esp + 0x90]
mov dword [esi + 0x340], eax
call fcn.00412eb4
lea ecx, [esp + 0x38]
call fcn.00412eb4
lea ecx, [esp + 0x4c]
call fcn.00411c9b
xor eax, eax
jmp 0x42cc5b
push dword [esp + 0x78]
push 0x70
mov ebx, dword [esp + 0x1c]
call fcn.0041bb76
lea ecx, [esp + 0x38]
call fcn.00412eb4
lea ecx, [esp + 0x4c]
call fcn.00411c9b
xor eax, eax
inc eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10