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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x53afcb
mov eax, dword fs:[0]
push eax
sub esp, 0x3b0
mov eax, dword [0x59099c]
xor eax, esp
mov dword [esp + 0x3a8], eax
push ebx
push esi
push edi
mov eax, dword [0x59099c]
xor eax, esp
push eax
lea eax, [esp + 0x3c0]
mov dword fs:[0], eax
mov edi, ecx
mov dword [esp + 0x64], edi
call fcn.00441310
mov dword [esp + 0x40], eax
mov byte [eax + 0x29], 1
mov eax, dword [esp + 0x40]
mov dword [eax + 4], eax
mov eax, dword [esp + 0x40]
mov dword [eax], eax
mov eax, dword [esp + 0x40]
mov dword [eax + 8], eax
xor eax, eax
mov dword [esp + 0x44], eax
lea ebx, [edi + 0x2d8]
mov ecx, ebx
mov dword [esp + 0x3c8], eax
mov dword [esp + 0x18], ebx
call fcn.00449360
mov ecx, ebx
movzx esi, al
call fcn.00449360
xor ecx, ecx
mov ch, al
or esi, ecx
mov ecx, ebx
call fcn.00449360
movzx edx, al
shl edx, 0x10
mov ecx, ebx
or esi, edx
call fcn.00449360
movzx eax, al
shl eax, 0x18
or eax, esi
mov dword [esp + 0x68], eax
mov dword [esp + 0x38], 0
jle 0x42e1a0
xor eax, eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x25c], 7
mov dword [esp + 0x258], eax
mov word [esp + 0x248], ax
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x68]
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0x3cc], 2
call fcn.00438bb0
cmp byte [0x5eebd6], 0
je 0x42d412
mov ecx, dword [esp + 0x38]
push ecx
push str.Function__d_n
call fcn.004255f0
add esp, 8
mov esi, dword [esp + 0x18]
mov ecx, esi
call fcn.00449360
mov ecx, esi
movzx ebx, al
call fcn.00449360
xor edx, edx
mov dh, al
mov ecx, esi
or ebx, edx
call fcn.00449360
movzx eax, al
shl eax, 0x10
mov ecx, esi
or ebx, eax
call fcn.00449360
movzx eax, al
shl eax, 0x18
or eax, ebx
mov ecx, esi
mov dword [esp + 0x34], eax
call fcn.00449360
mov ecx, esi
movzx ebx, al
call fcn.00449360
xor ecx, ecx
mov ch, al
or ebx, ecx
mov ecx, esi
call fcn.00449360
movzx edx, al
shl edx, 0x10
mov ecx, esi
or ebx, edx
call fcn.00449360
movzx eax, al
shl eax, 0x18
or eax, ebx
mov dword [esp + 0x6c], eax
mov dword [esp + 0xa0], 0
jle 0x42ded2
lea esp, [esp]
mov ebx, dword [esp + 0x18]
lea esi, [esp + 0x27c]
mov ecx, ebx
call fcn.004494c0
lea eax, [esp + 0x260]
push eax
mov ecx, ebx
mov byte [esp + 0x3cc], 3
call fcn.004495f0
cmp byte [0x5eebd6], 0
je 0x42d511
cmp dword [esp + 0x278], 8
mov ecx, dword [esp + 0x264]
jae 0x42d4ea
lea ecx, [esp + 0x264]
cmp dword [esp + 0x294], 0x10
mov eax, dword [esp + 0x280]
jae 0x42d502
lea eax, [esp + 0x280]
push ecx
push eax
push str._File:__s_n_Name:__ls_n
call fcn.004255f0
add esp, 0xc
xor ebx, ebx
mov dword [esp + 0x240], 7
mov dword [esp + 0x23c], ebx
mov word [esp + 0x22c], bx
mov byte [esp + 0x3c8], 5
cmp dword [esp + 0x290], ebx
jbe 0x42d7f3
lea ecx, [esp + 0x27c]
push ecx
lea esi, [esp + 0x88]
call fcn.00454d80
add esp, 4
mov esi, eax
push 0x56481c
lea edx, [esp + 0x264]
push edx
lea eax, [esp + 0x214]
push eax
mov byte [esp + 0x3d4], 6
call fcn.0040dc83
add esp, 0xc
push esi
push eax
lea ecx, [esp + 0x50]
push ecx
mov byte [esp + 0x3d4], 7
call fcn.004208a6
add esp, 0xc
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [esp + 0x234]
mov byte [esp + 0x3d4], 8
call fcn.0040ad18
mov esi, 8
cmp dword [esp + 0x60], esi
jb 0x42d5c7
mov edx, dword [esp + 0x4c]
push edx
call fcn.0050b609
add esp, 4
cmp dword [esp + 0x224], esi
mov edi, 7
mov dword [esp + 0x60], edi
mov dword [esp + 0x5c], ebx
mov word [esp + 0x4c], bx
jb 0x42d5f2
mov eax, dword [esp + 0x210]
push eax
call fcn.0050b609
add esp, 4
mov byte [esp + 0x3c8], 5
cmp dword [esp + 0x9c], esi
mov dword [esp + 0x224], edi
mov dword [esp + 0x220], ebx
mov word [esp + 0x210], bx
jb 0x42d629
mov ecx, dword [esp + 0x88]
push ecx
call fcn.0050b609
add esp, 4
mov esi, dword [esp + 0x40]
lea edx, [esp + 0xa4]
push edx
lea ebx, [esp + 0x280]
lea edi, [esp + 0x40]
call fcn.0043a1f0
mov edi, eax
mov eax, dword [edi]
test eax, eax
je 0x42d655
lea ecx, [esp + 0x3c]
cmp eax, ecx
je 0x42d65a
call fcn.0050bbb1
cmp dword [edi + 4], esi
jne 0x42d76e
lea edx, [esp + 0x27c]
push edx
lea esi, [esp + 0x88]
call fcn.00454d80
add esp, 4
mov edi, eax
mov esi, dword [esp + 0x64]
mov ecx, esi
mov byte [esp + 0x3c8], 9
call fcn.00428b40
mov ebx, 8
cmp dword [edi + 0x18], ebx
jb 0x42d69e
mov edi, dword [edi + 4]
jmp 0x42d6a1
add edi, 4
mov eax, dword [esi + 0x78]
push edi
push eax
call fcn.00444340
add esp, 8
mov byte [esp + 0x3c8], 5
cmp dword [esp + 0x9c], ebx
jb 0x42d6cf
mov ecx, dword [esp + 0x88]
push ecx
call fcn.0050b609
add esp, 4
xor ebx, ebx
mov edi, 7
push 0x564820
mov dword [esp + 0x228], edi
mov dword [esp + 0x224], ebx
mov word [esp + 0x214], bx
call fcn.0050b74d
add esp, 4
push eax
push 0x564820
lea ecx, [esp + 0x214]
call fcn.0040adab
push ebx
mov byte [esp + 0x3cc], 0xa
mov edx, dword [esi]
mov edx, dword [edx + 0x20]
push 1
lea eax, [esp + 0x214]
push eax
mov ecx, esi
call edx
mov byte [esp + 0x3c8], 5
cmp dword [esp + 0x224], 8
jb 0x42d749
mov eax, dword [esp + 0x210]
push eax
call fcn.0050b609
add esp, 4
cmp byte [esi + 0xed], bl
jne 0x42e368
lea ecx, [esp + 0x27c]
push ecx
lea edx, [esp + 0x40]
push edx
lea ebx, [esp + 0x150]
call fcn.0043a0b0
mov edi, dword [esp + 0x64]
mov ebx, dword [esp + 0x24]
test ebx, ebx
mov esi, dword [esp + 0x28]
je 0x42d80f
mov ecx, esi
mov esi, dword [esp + 0x2c]
sub ecx, ebx
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ecx, edx
sub esi, ebx
shr ecx, 0x1f
add ecx, edx
mov eax, 0x92492493
imul esi
add edx, esi
mov esi, dword [esp + 0x28]
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ecx, eax
jae 0x42d80f
mov edx, dword [esp + 0x34]
mov byte [esp + 0xb8], 0
mov ecx, dword [esp + 0xb8]
push ecx
push edx
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x234]
push ecx
push 1
push esi
call fcn.00416d92
add esp, 0x18
add esi, 0x1c
mov dword [esp + 0x28], esi
jmp 0x42d8b2
push 0xffffffffffffffff
push ebx
lea eax, [esp + 0x268]
push eax
lea ecx, [esp + 0x234]
call fcn.0040ad18
jmp 0x42d772
cmp ebx, esi
mov dword [esp + 0x10], esi
jbe 0x42d824
call fcn.0050bbb1
mov esi, dword [esp + 0x28]
mov ebx, dword [esp + 0x24]
test ebx, ebx
je 0x42d841
mov ecx, esi
sub ecx, ebx
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
jne 0x42d845
xor ebx, ebx
jmp 0x42d867
cmp ebx, esi
jbe 0x42d84e
call fcn.0050bbb1
mov ecx, dword [esp + 0x10]
sub ecx, ebx
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
mov edx, dword [esp + 0x10]
lea ecx, [esp + 0x228]
push ecx
push 1
lea eax, [esp + 0x28]
push edx
push eax
mov ecx, eax
call fcn.00415e12
mov eax, dword [esp + 0x24]
cmp eax, dword [esp + 0x28]
mov esi, eax
jbe 0x42d897
call fcn.0050bbb1
mov eax, dword [esp + 0x24]
lea ecx, [ebx*8]
sub ecx, ebx
lea ecx, [esi + ecx*4]
cmp ecx, dword [esp + 0x28]
ja 0x42d8ad
cmp ecx, eax
jae 0x42d8b2
call fcn.0050bbb1
xor esi, esi
push 0xffffffffffffffff
push esi
lea edx, [esp + 0x268]
push edx
lea ecx, [esp + 0x1fc]
mov dword [esp + 0x214], 7
mov dword [esp + 0x210], esi
mov word [esp + 0x200], si
call fcn.0040ad18
mov dword [esp + 0x14], esi
mov dword [esp + 0x80], 0xffffd8ee
mov dword [esp + 0xb4], 0x2e
nop
xor eax, eax
mov byte [esp + 0x1f], 0
mov dword [esp + 0x224], 7
mov dword [esp + 0x220], eax
mov word [esp + 0x210], ax
push 1
push eax
lea eax, [esp + 0xbc]
mov bl, 0xc
push eax
lea ecx, [esp + 0x1fc]
mov byte [esp + 0x3d4], bl
call fcn.0040aeed
mov esi, eax
cmp esi, 0xffffffff
je 0x42d9ad
push esi
push 0
lea ecx, [esp + 0x8c]
push ecx
lea ecx, [esp + 0x1fc]
call fcn.0040a537
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x218]
mov byte [esp + 0x3d4], 0xd
call fcn.0040ad18
mov byte [esp + 0x3c8], bl
cmp dword [esp + 0x9c], 8
jb 0x42d999
mov edx, dword [esp + 0x88]
push edx
call fcn.0050b609
add esp, 4
add esi, 1
push esi
push 0
lea ecx, [esp + 0x1f8]
call fcn.0040a44e
jmp 0x42d9ca
push 0xffffffffffffffff
push 0
lea eax, [esp + 0x1f8]
push eax
lea ecx, [esp + 0x218]
call fcn.0040ad18
mov byte [esp + 0x1f], 1
add dword [esp + 0x14], 1
mov ebx, 8
cmp dword [esp + 0x224], ebx
jb 0x42d9ea
mov ecx, dword [esp + 0x210]
mov dword [esp + 0x10], ecx
jmp 0x42d9f5
lea edx, [esp + 0x210]
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x10]
test edx, edx
mov esi, dword [edi + 0x78]
jne 0x42da07
mov eax, dword [esi + 8]
mov dword [eax], edx
jmp 0x42da5e
mov eax, edx
lea ebx, [eax + 2]
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x42da10
sub eax, ebx
sar eax, 1
mov dword [esp + 0xac], eax
mov eax, dword [esi + 0x10]
mov ecx, dword [eax + 0x3c]
cmp ecx, dword [eax + 0x38]
jb 0x42da3c
mov ebx, esi
call fcn.00463310
mov edx, dword [esp + 0x10]
mov ebx, dword [esi + 8]
mov eax, dword [esp + 0xac]
push edx
push esi
mov dword [ebx], 5
call fcn.0046d180
mov dword [ebx + 8], eax
add esp, 8
mov ebx, 8
mov edx, dword [esp + 0x80]
add dword [esi + 8], 0x10
mov eax, dword [edi + 0x78]
push edx
push eax
call fcn.00444480
mov eax, dword [edi + 0x78]
mov eax, dword [eax + 8]
add esp, 8
sub eax, 0x10
cmp byte [esp + 0x1f], 0
jne 0x42dabc
cmp dword [eax], 6
jne 0x42dd8b
cmp dword [esp + 0x224], ebx
mov dword [esp + 0x80], 0xfffffffe
jb 0x42d900
mov ecx, dword [esp + 0x210]
push ecx
call fcn.0050b609
add esp, 4
jmp 0x42d900
cmp dword [eax], 7
jne 0x42dd30
mov ecx, dword [esp + 0x30]
test ecx, ecx
jne 0x42daf0
mov edx, dword [eax + 8]
push 0xffffffffffffffff
push ecx
lea eax, [esp + 0x230]
push eax
lea ecx, [esp + 0x250]
mov dword [esp + 0x3c], edx
call fcn.0040ad18
jmp 0x42dd30
cmp ecx, dword [eax + 8]
je 0x42dd30
push 0x5604fd
mov dword [esp + 0x64], 0xf
mov dword [esp + 0x60], 0
mov byte [esp + 0x50], 0
call fcn.0050b770
add esp, 4
push eax
push 0x5604fd
lea ecx, [esp + 0x50]
call fcn.0040b689
lea ecx, [esp + 0x228]
push ecx
lea esi, [esp + 0x88]
mov byte [esp + 0x3cc], 0xe
call fcn.00454f00
add esp, 4
mov ebx, eax
lea edx, [esp + 0x244]
push edx
lea esi, [esp + 0xc0]
mov byte [esp + 0x3cc], 0xf
call fcn.00454f00
add esp, 4
push eax
lea eax, [esp + 0x130]
push str.Function_linking_conflict__
push eax
mov byte [esp + 0x3d4], 0x10
call fcn.0040dcca
add esp, 0xc
push str._and
push eax
lea ecx, [esp + 0x118]
push ecx
mov byte [esp + 0x3d4], 0x11
call fcn.0040dd15
add esp, 0xc
push ebx
push eax
lea edx, [esp + 0xfc]
push edx
mov byte [esp + 0x3d4], 0x12
call fcn.0040ded0
add esp, 0xc
push 0x564830
push eax
lea eax, [esp + 0xe0]
push eax
mov byte [esp + 0x3d4], 0x13
call fcn.0040dd15
add esp, 0xc
mov byte [esp + 0x3c8], 0x14
mov edx, dword [edi]
mov edx, dword [edx + 8]
lea ecx, [esp + 0x48]
push ecx
push eax
mov ecx, edi
call edx
cmp dword [esp + 0xf0], 0x10
jb 0x42dc0f
mov eax, dword [esp + 0xdc]
push eax
call fcn.0050b609
add esp, 4
xor esi, esi
cmp dword [esp + 0x10c], 0x10
mov ebx, 0xf
mov dword [esp + 0xf0], ebx
mov dword [esp + 0xec], esi
mov byte [esp + 0xdc], 0
jb 0x42dc46
mov ecx, dword [esp + 0xf8]
push ecx
call fcn.0050b609
add esp, 4
cmp dword [esp + 0x128], 0x10
mov dword [esp + 0x10c], ebx
mov dword [esp + 0x108], esi
mov byte [esp + 0xf8], 0
jb 0x42dc76
mov edx, dword [esp + 0x114]
push edx
call fcn.0050b609
add esp, 4
cmp dword [esp + 0x144], 0x10
mov dword [esp + 0x128], ebx
mov dword [esp + 0x124], esi
mov byte [esp + 0x114], 0
jb 0x42dca6
mov eax, dword [esp + 0x130]
push eax
call fcn.0050b609
add esp, 4
cmp dword [esp + 0xd4], 0x10
mov dword [esp + 0x144], ebx
mov dword [esp + 0x140], esi
mov byte [esp + 0x130], 0
jb 0x42dcd6
mov ecx, dword [esp + 0xc0]
push ecx
call fcn.0050b609
add esp, 4
cmp dword [esp + 0x9c], 0x10
mov dword [esp + 0xd4], ebx
mov dword [esp + 0xd0], esi
mov byte [esp + 0xc0], 0
jb 0x42dd06
mov edx, dword [esp + 0x88]
push edx
call fcn.0050b609
add esp, 4
cmp dword [esp + 0x60], 0x10
mov dword [esp + 0x9c], ebx
mov dword [esp + 0x98], esi
mov byte [esp + 0x88], 0
jb 0x42dd30
mov eax, dword [esp + 0x4c]
push eax
call fcn.0050b609
add esp, 4
mov eax, dword [edi + 0x78]
or ecx, 0xffffffff
sub ecx, dword [esp + 0x14]
js 0x42dd78
mov edx, dword [eax + 0xc]
shl ecx, 4
add edx, ecx
cmp dword [eax + 8], edx
jae 0x42dd66
mov edx, 0x10
mov edi, edi
mov esi, dword [eax + 8]
mov dword [esi], 0
add dword [eax + 8], edx
mov esi, dword [eax + 0xc]
add esi, ecx
cmp dword [eax + 8], esi
jb 0x42dd50
mov edx, dword [eax + 0xc]
add edx, ecx
mov dword [eax + 8], edx
cmp dword [esp + 0x224], 8
jmp 0x42dde1
shl ecx, 4
add ecx, 0x10
add dword [eax + 8], ecx
cmp dword [esp + 0x224], 8
jmp 0x42dde1
mov eax, dword [edi + 0x78]
or ecx, 0xffffffff
sub ecx, dword [esp + 0x14]
js 0x42ddd1
mov edx, dword [eax + 0xc]
shl ecx, 4
add edx, ecx
cmp dword [eax + 8], edx
jae 0x42ddc7
jmp 0x42ddb0
mov edx, dword [eax + 8]
mov dword [edx], 0
add dword [eax + 8], 0x10
mov edx, dword [eax + 0xc]
add edx, ecx
cmp dword [eax + 8], edx
jb 0x42ddb0
mov edx, dword [eax + 0xc]
add edx, ecx
mov dword [eax + 8], edx
jmp 0x42ddda
shl ecx, 4
add ecx, 0x10
add dword [eax + 8], ecx
cmp dword [esp + 0x224], ebx
jb 0x42ddf3
mov eax, dword [esp + 0x210]
push eax
call fcn.0050b609
add esp, 4
cmp dword [esp + 0x208], 8
jb 0x42de0d
mov ecx, dword [esp + 0x1f4]
push ecx
call fcn.0050b609
add esp, 4
xor esi, esi
cmp dword [esp + 0x240], 8
mov ebx, 7
mov dword [esp + 0x208], ebx
mov dword [esp + 0x204], esi
mov word [esp + 0x1f4], si
jb 0x42de44
mov edx, dword [esp + 0x22c]
push edx
call fcn.0050b609
add esp, 4
cmp dword [esp + 0x278], 8
mov dword [esp + 0x240], ebx
mov dword [esp + 0x23c], esi
mov word [esp + 0x22c], si
jb 0x42de74
mov eax, dword [esp + 0x264]
push eax
call fcn.0050b609
add esp, 4
mov byte [esp + 0x3c8], 2
cmp dword [esp + 0x294], 0x10
mov dword [esp + 0x278], ebx
mov dword [esp + 0x274], esi
mov word [esp + 0x264], si
jb 0x42deac
mov ecx, dword [esp + 0x280]
push ecx
call fcn.0050b609
add esp, 4
mov eax, dword [esp + 0xa0]
add eax, 1
cmp eax, dword [esp + 0x6c]
mov dword [esp + 0xa0], eax
jl 0x42d4a0
cmp dword [esp + 0x30], 0
jne 0x42e0e6
cmp byte [edi + 0xed], 0
jne 0x42e0e6
cmp byte [edi + 0x120], 0
jne 0x42e0e6
xor esi, esi
push str.Unable_to_link_function.__Named_references:
mov dword [esp + 0x64], 0xf
mov dword [esp + 0x60], esi
mov byte [esp + 0x50], 0
call fcn.0050b770
add esp, 4
push eax
push str.Unable_to_link_function.__Named_references:
lea ecx, [esp + 0x50]
call fcn.0040b689
mov byte [esp + 0x3c8], 0x15
mov edx, dword [edi]
mov edx, dword [edx + 0x3c]
push 0xe
lea eax, [esp + 0x4c]
push eax
mov ecx, edi
call edx
mov byte [esp + 0x3c8], 2
cmp dword [esp + 0x60], 0x10
jb 0x42df4f
mov eax, dword [esp + 0x4c]
push eax
call fcn.0050b609
add esp, 4
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], esi
jmp 0x42df60
mov esi, dword [esp + 0x24]
test esi, esi
mov ebx, dword [esp + 0x28]
jne 0x42df70
xor eax, eax
jmp 0x42df87
mov ecx, ebx
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ecx, dword [esp + 0x10]
cmp ecx, eax
jge 0x42e06d
test esi, esi
je 0x42dfb0
sub ebx, esi
mov eax, 0x92492493
imul ebx
add edx, ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ecx, eax
jb 0x42dfb9
call fcn.0050bbb1
mov esi, dword [esp + 0x24]
mov ecx, dword [esp + 0x14]
add esi, ecx
push esi
lea esi, [esp + 0xc0]
call fcn.00454f00
add esp, 4
push eax
lea edx, [esp + 0x88]
push 0x56058c
push edx
mov byte [esp + 0x3d4], 0x16
call fcn.0040dcca
add esp, 0xc
mov byte [esp + 0x3c8], 0x17
mov edx, dword [edi]
push 0xe
push eax
mov eax, dword [edx + 0x3c]
mov ecx, edi
call eax
mov esi, 0x10
cmp dword [esp + 0x9c], esi
jb 0x42e01f
mov ecx, dword [esp + 0x88]
push ecx
call fcn.0050b609
add esp, 4
mov byte [esp + 0x3c8], 2
cmp dword [esp + 0xd4], esi
mov dword [esp + 0x9c], 0xf
mov dword [esp + 0x98], 0
mov byte [esp + 0x88], 0
jb 0x42e05e
mov edx, dword [esp + 0xc0]
push edx
call fcn.0050b609
add esp, 4
add dword [esp + 0x10], 1
add dword [esp + 0x14], 0x1c
jmp 0x42df60
mov ecx, edi
call fcn.00431e10
mov eax, dword [esp + 0x34]
cmp eax, 1
jg 0x42e4c4
push str.Warning:_Single_function_reference_lost.
mov dword [esp + 0x64], 0xf
mov dword [esp + 0x60], 0
mov byte [esp + 0x50], 0
call fcn.0050b770
add esp, 4
push eax
push str.Warning:_Single_function_reference_lost.
lea ecx, [esp + 0x50]
call fcn.0040b689
mov byte [esp + 0x3c8], 0x1a
mov eax, dword [edi]
mov edx, dword [eax + 0x3c]
push 0xe
lea ecx, [esp + 0x4c]
push ecx
mov ecx, edi
call edx
mov byte [esp + 0x3c8], 2
cmp dword [esp + 0x60], 0x10
jb 0x42e0e6
mov eax, dword [esp + 0x4c]
push eax
call fcn.0050b609
add esp, 4
push 4
call fcn.00509a64
mov ecx, dword [esp + 0x34]
add esp, 4
lea esi, [edi + 0x2b8]
lea ebx, [esp + 0x34]
mov dword [esp + 0x34], eax
mov dword [eax], ecx
call fcn.004386a0
mov eax, dword [esp + 0x24]
xor ecx, ecx
cmp eax, ecx
je 0x42e159
mov ebx, dword [esp + 0x28]
cmp eax, ebx
je 0x42e14e
lea esi, [eax + 0x18]
mov edi, edi
cmp dword [esi], 8
jb 0x42e133
mov eax, dword [esi - 0x14]
push eax
call fcn.0050b609
add esp, 4
xor ecx, ecx
mov dword [esi], 7
mov dword [esi - 4], ecx
mov word [esi - 0x14], cx
add esi, 0x1c
lea edx, [esi - 0x18]
cmp edx, ebx
jne 0x42e120
mov eax, dword [esp + 0x24]
push eax
call fcn.0050b609
add esp, 4
xor ecx, ecx
mov byte [esp + 0x3c8], 0
cmp dword [esp + 0x25c], 8
mov dword [esp + 0x24], ecx
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], ecx
jb 0x42e187
mov eax, dword [esp + 0x248]
push eax
call fcn.0050b609
add esp, 4
mov eax, dword [esp + 0x38]
add eax, 1
cmp eax, dword [esp + 0x68]
mov dword [esp + 0x38], eax
jl 0x42d3b5
mov ebx, dword [esp + 0x18]
xor esi, esi
mov dword [edi + 0x2f8], 0xffffffff
call fcn.00440e10
mov dword [esp + 0x78], eax
mov byte [eax + 0x11], 1
mov eax, dword [esp + 0x78]
mov dword [eax + 4], eax
mov eax, dword [esp + 0x78]
mov dword [eax], eax
mov eax, dword [esp + 0x78]
mov dword [eax + 8], eax
mov dword [esp + 0x7c], esi
mov byte [esp + 0x3c8], 0x1b
push 0x560568
mov dword [esp + 0x1d8], esi
mov dword [esp + 0x64], 7
mov dword [esp + 0x60], esi
mov word [esp + 0x50], si
call fcn.0050b74d
add esp, 4
push eax
push 0x560568
lea ecx, [esp + 0x50]
call fcn.0040adab
lea eax, [esp + 0x154]
push eax
lea ecx, [esp + 0x78]
push ecx
lea edx, [esp + 0x50]
push edx
push 0xffffd8ee
mov ecx, edi
mov byte [esp + 0x3d8], 0x1c
call fcn.0042cce0
mov byte [esp + 0x3c8], 0x1b
cmp dword [esp + 0x60], 8
jb 0x42e24f
mov eax, dword [esp + 0x4c]
push eax
call fcn.0050b609
add esp, 4
push 0x560568
mov dword [esp + 0x2b4], 7
mov dword [esp + 0x2b0], esi
mov word [esp + 0x2a0], si
call fcn.0050b74d
add esp, 4
push eax
push 0x560568
lea ecx, [esp + 0x2a0]
call fcn.0040adab
mov byte [esp + 0x3c8], 0x1d
mov esi, dword [edi + 0x78]
mov ecx, ebx
call fcn.00449360
mov ecx, dword [esi + 0x48]
mov byte [ecx + 7], al
mov edx, dword [ebx + 0x18]
cmp edx, dword [ebx + 0x14]
jge 0x42e766
lea esp, [esp]
xor esi, esi
cmp byte [0x5eebd6], 0
je 0x42e2c8
push str.Key
call fcn.004255f0
add esp, 4
push 0x560568
mov dword [esp + 0x64], 7
mov dword [esp + 0x60], esi
mov word [esp + 0x50], si
call fcn.0050b74d
add esp, 4
push eax
push 0x560568
lea ecx, [esp + 0x50]
call fcn.0040adab
lea eax, [esp + 0x48]
push eax
mov ecx, edi
mov byte [esp + 0x3cc], 0x20
call fcn.0042c020
test al, al
sete bl
mov byte [esp + 0x3c8], 0x1d
cmp dword [esp + 0x60], 8
jb 0x42e32a
mov ecx, dword [esp + 0x4c]
push ecx
call fcn.0050b609
add esp, 4
mov ecx, dword [edi + 0x78]
mov eax, dword [ecx + 8]
sub eax, 0x10
je 0x42e676
mov eax, dword [eax]
cmp eax, 5
je 0x42e34e
cmp eax, 3
je 0x42e34e
cmp eax, 4
jne 0x42e676
push 0xffffffffffffffff
push ecx
call fcn.00444100
mov esi, eax
push esi
call fcn.0050b74d
add esp, 0xc
push eax
push esi
jmp 0x42e689
cmp dword [esp + 0x240], 8
jb 0x42e382
mov ecx, dword [esp + 0x22c]
push ecx
call fcn.0050b609
add esp, 4
cmp dword [esp + 0x278], 8
mov dword [esp + 0x240], edi
mov dword [esp + 0x23c], ebx
mov word [esp + 0x22c], bx
jb 0x42e3b2
mov edx, dword [esp + 0x264]
push edx
call fcn.0050b609
add esp, 4
cmp dword [esp + 0x294], 0x10
mov dword [esp + 0x278], edi
mov dword [esp + 0x274], ebx
mov word [esp + 0x264], bx
jb 0x42e3e2
mov eax, dword [esp + 0x280]
push eax
call fcn.0050b609
add esp, 4
mov esi, dword [esp + 0x24]
cmp esi, ebx
mov dword [esp + 0x294], 0xf
mov dword [esp + 0x290], ebx
mov byte [esp + 0x280], bl
je 0x42e44a
mov edi, dword [esp + 0x28]
cmp esi, edi
je 0x42e43c
add esi, 0x18
mov edi, edi
cmp dword [esi], 8
jb 0x42e421
mov eax, dword [esi - 0x14]
push eax
call fcn.0050b609
add esp, 4
mov dword [esi], 7
mov dword [esi - 4], ebx
mov word [esi - 0x14], bx
add esi, 0x1c
lea ecx, [esi - 0x18]
cmp ecx, edi
jne 0x42e410
mov esi, dword [esp + 0x24]
push esi
call fcn.0050b609
add esp, 4
mov edi, 7
cmp dword [esp + 0x25c], 8
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ebx
mov dword [esp + 0x2c], ebx
jb 0x42e470
mov edx, dword [esp + 0x248]
push edx
call fcn.0050b609
add esp, 4
mov dword [esp + 0x3c8], 0xffffffff
mov eax, dword [esp + 0x40]
push eax
lea ecx, [esp + 0x40]
mov dword [esp + 0x260], edi
push ecx
mov dword [esp + 0x260], ebx
mov word [esp + 0x250], bx
mov edx, dword [eax]
push edx
mov esi, ecx
push esi
lea eax, [esp + 0xb4]
push eax
mov edi, ecx
call fcn.0043f040
mov ecx, dword [esp + 0x40]
push ecx
call fcn.0050b609
add esp, 4
xor al, al
jmp 0x42eb9b
push eax
lea edx, [esp + 0x2b8]
push str.Function_has__d_unlinkable_references.
push edx
call fcn.0050b433
add esp, 0xc
xor ebx, ebx
mov esi, 0xf
push 0x5604fd
mov dword [esp + 0x64], esi
mov dword [esp + 0x60], ebx
mov byte [esp + 0x50], bl
call fcn.0050b770
add esp, 4
push eax
push 0x5604fd
lea ecx, [esp + 0x50]
call fcn.0040b689
mov byte [esp + 0x3c8], 0x18
lea eax, [esp + 0x2b4]
push eax
mov dword [esp + 0x20c], esi
mov dword [esp + 0x208], ebx
mov byte [esp + 0x1f8], bl
call fcn.0050b770
add esp, 4
push eax
lea ecx, [esp + 0x2b8]
push ecx
lea ecx, [esp + 0x1f8]
call fcn.0040b689
lea eax, [esp + 0x48]
mov byte [esp + 0x3c8], 0x19
mov edx, dword [edi]
mov edx, dword [edx + 8]
push eax
lea ecx, [esp + 0x1f4]
push ecx
mov ecx, edi
call edx
mov edi, 0x10
cmp dword [esp + 0x208], edi
jb 0x42e587
mov eax, dword [esp + 0x1f4]
push eax
call fcn.0050b609
add esp, 4
cmp dword [esp + 0x60], edi
mov dword [esp + 0x208], esi
mov dword [esp + 0x204], ebx
mov byte [esp + 0x1f4], 0
jb 0x42e5b0
mov ecx, dword [esp + 0x4c]
push ecx
call fcn.0050b609
add esp, 4
mov eax, dword [esp + 0x24]
cmp eax, ebx
je 0x42e5f8
mov edi, dword [esp + 0x28]
cmp eax, edi
je 0x42e5ef
lea esi, [eax + 0x18]
cmp dword [esi], 8
jb 0x42e5d4
mov eax, dword [esi - 0x14]
push eax
call fcn.0050b609
add esp, 4
mov dword [esi], 7
mov dword [esi - 4], ebx
mov word [esi - 0x14], bx
add esi, 0x1c
lea edx, [esi - 0x18]
cmp edx, edi
jne 0x42e5c3
mov eax, dword [esp + 0x24]
push eax
call fcn.0050b609
add esp, 4
cmp dword [esp + 0x25c], 8
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ebx
mov dword [esp + 0x2c], ebx
jb 0x42e61e
mov eax, dword [esp + 0x248]
push eax
call fcn.0050b609
add esp, 4
mov dword [esp + 0x3c8], 0xffffffff
mov eax, dword [esp + 0x40]
push eax
lea ecx, [esp + 0x40]
push ecx
mov dword [esp + 0x264], 7
mov dword [esp + 0x260], ebx
mov word [esp + 0x250], bx
mov edx, dword [eax]
mov esi, ecx
push edx
push esi
lea ecx, [esp + 0xb4]
push ecx
mov edi, esi
call fcn.0043f040
mov edx, dword [esp + 0x40]
push edx
call fcn.0050b609
add esp, 4
xor al, al
jmp 0x42eb9b
push 0x560568
call fcn.0050b74d
add esp, 4
push eax
push 0x560568
lea ecx, [esp + 0x2a0]
call fcn.0040adab
test bl, bl
jne 0x42e83d
mov ecx, dword [esp + 0x18]
call fcn.00449360
cmp byte [0x5eebd6], bl
je 0x42e6bb
push str.Value
call fcn.004255f0
add esp, 4
lea edx, [esp + 0x298]
push edx
mov ecx, edi
call fcn.0042c020
mov edi, dword [edi + 0x78]
mov eax, dword [edi + 8]
mov esi, dword [edi + 0x48]
lea ecx, [edi + 0x48]
sub eax, 0x20
push 0
push edi
lea ebx, [esp + 0x3c]
mov edi, eax
mov dword [esp + 0x3c], 0
mov dword [esp + 0x74], ecx
call fcn.0046ca20
mov edx, dword [esp + 0x6c]
mov ecx, dword [edx + 0x78]
mov ecx, dword [ecx + 8]
mov esi, dword [ecx - 0x10]
sub ecx, 0x10
mov dword [eax], esi
mov esi, dword [ecx + 4]
mov dword [eax + 4], esi
mov esi, dword [ecx + 8]
mov dword [eax + 8], esi
mov ecx, dword [ecx + 0xc]
mov dword [eax + 0xc], ecx
mov ecx, dword [edx + 0x78]
mov eax, dword [ecx + 8]
add esp, 8
cmp dword [eax - 0x10], 5
jl 0x42e74b
mov eax, dword [eax - 8]
test byte [eax + 5], 3
je 0x42e74b
mov eax, dword [esp + 0x6c]
mov eax, dword [eax]
test byte [eax + 5], 4
je 0x42e74b
mov ecx, dword [ecx + 0x10]
and byte [eax + 5], 0xfb
mov esi, dword [ecx + 0x24]
mov dword [eax + 0x1c], esi
mov dword [ecx + 0x24], eax
mov edx, dword [edx + 0x78]
mov eax, dword [esp + 0x18]
add dword [edx + 8], 0xffffffe0
mov ecx, dword [eax + 0x18]
cmp ecx, dword [eax + 0x14]
mov edi, dword [esp + 0x64]
jl 0x42e2b0
mov ebx, 0xf
xor esi, esi
push 0x5604fd
mov dword [esp + 0x64], ebx
mov dword [esp + 0x60], esi
mov byte [esp + 0x50], 0
call fcn.0050b770
add esp, 4
push eax
push 0x5604fd
lea ecx, [esp + 0x50]
call fcn.0040b689
mov byte [esp + 0x3c8], 0x1e
push str.Premature_file_end
mov dword [esp + 0x20c], ebx
mov dword [esp + 0x208], esi
mov byte [esp + 0x1f8], 0
call fcn.0050b770
add esp, 4
push eax
push str.Premature_file_end
lea ecx, [esp + 0x1f8]
call fcn.0040b689
lea eax, [esp + 0x48]
mov byte [esp + 0x3c8], 0x1f
mov edx, dword [edi]
mov edx, dword [edx + 8]
push eax
lea ecx, [esp + 0x1f4]
push ecx
mov ecx, edi
call edx
cmp dword [esp + 0x208], 0x10
jb 0x42e80b
mov eax, dword [esp + 0x1f4]
push eax
call fcn.0050b609
add esp, 4
mov byte [esp + 0x3c8], 0x1d
cmp dword [esp + 0x60], 0x10
mov dword [esp + 0x208], ebx
mov dword [esp + 0x204], esi
mov byte [esp + 0x1f4], 0
jb 0x42e83d
mov ecx, dword [esp + 0x4c]
push ecx
call fcn.0050b609
add esp, 4
mov eax, dword [edi + 0x288]
mov esi, dword [eax]
lea ebx, [edi + 0x284]
mov dword [esp + 0x70], esi
mov dword [esp + 0x6c], ebx
jmp 0x42e860
test ebx, ebx
mov edx, dword [edi + 0x288]
lea eax, [edi + 0x284]
mov dword [esp + 0xb0], edx
je 0x42e87b
cmp ebx, eax
je 0x42e880
call fcn.0050bbb1
cmp esi, dword [esp + 0xb0]
je 0x42e901
test ebx, ebx
jne 0x42e892
call fcn.0050bbb1
cmp esi, dword [ebx + 4]
jne 0x42e89c
call fcn.0050bbb1
cmp esi, dword [ebx + 4]
lea eax, [esi + 0xc]
mov dword [esp + 0x34], eax
jne 0x42e8ad
call fcn.0050bbb1
mov ecx, dword [edi + 0x78]
mov edx, dword [ecx + 8]
mov eax, dword [esi + 0x28]
mov dword [edx], 7
mov ecx, dword [edi + 0x78]
mov edx, dword [ecx + 8]
mov dword [edx + 8], eax
mov eax, dword [edi + 0x78]
add dword [eax + 8], 0x10
mov eax, dword [edi + 0x78]
mov ecx, dword [eax + 8]
sub ecx, dword [eax + 0xc]
mov edx, dword [esp + 0x34]
sar ecx, 4
push ecx
push edx
push edi
call fcn.004287f0
mov eax, dword [edi + 0x78]
add dword [eax + 8], 0xfffffff0
lea esi, [esp + 0x6c]
call fcn.0043efd0
mov esi, dword [esp + 0x70]
mov ebx, dword [esp + 0x6c]
jmp 0x42e860
xor esi, esi
mov dword [esp + 0x14], esi
mov dword [esp + 0x30], esi
jmp 0x42e910
mov eax, dword [edi + 0x2cc]
test eax, eax
je 0x42e933
mov ecx, dword [edi + 0x2d0]
sub ecx, eax
mov eax, 0x6bca1af3
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jge 0x42ead5
mov eax, dword [edi + 0x2cc]
test eax, eax
je 0x42e962
mov ecx, dword [edi + 0x2d0]
sub ecx, eax
mov eax, 0x6bca1af3
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x42e967
call fcn.0050bbb1
mov ebx, dword [edi + 0x2cc]
add ebx, dword [esp + 0x30]
xor eax, eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x68], eax
mov eax, dword [ebx + 0x80]
sub eax, 1
test eax, eax
mov dword [esp + 0x18], 0xffffd8ee
jle 0x42ea37
mov dword [esp + 0x38], 0xffffffff
mov esi, ebx
mov edi, edi
mov ecx, dword [edi + 0x78]
mov edx, dword [esi]
mov eax, 1
add dword [esp + 0x10], eax
sub dword [esp + 0x38], eax
mov eax, dword [ecx + 8]
mov dword [eax], edx
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
mov dword [eax + 8], edx
mov ecx, dword [esi + 0xc]
mov edx, dword [esp + 0x18]
mov dword [eax + 0xc], ecx
mov eax, dword [edi + 0x78]
add dword [eax + 8], 0x10
mov eax, dword [edi + 0x78]
push edx
push eax
call fcn.00444480
mov ecx, dword [edi + 0x78]
mov eax, dword [ecx + 8]
add esp, 8
sub eax, 0x10
je 0x42e9f1
cmp dword [eax], 6
je 0x42ea01
mov edx, dword [esp + 0x38]
push edx
push ecx
call fcn.00443d70
add esp, 8
jmp 0x42ea09
mov dword [esp + 0x18], 0xfffffffe
mov eax, dword [esp + 0x68]
mov ecx, dword [ebx + 0x80]
add eax, 1
sub ecx, 1
add esi, 0x10
cmp eax, ecx
mov dword [esp + 0x68], eax
jl 0x42e9a0
cmp dword [esp + 0x18], 0xfffffffe
jne 0x42ea37
mov dword [esp + 0x18], 0xfffffffd
mov edx, dword [ebx + 0x80]
mov ecx, dword [edi + 0x78]
mov ecx, dword [ecx + 8]
shl edx, 4
lea eax, [edx + ebx - 0x10]
mov edx, dword [eax]
mov dword [ecx], edx
mov edx, dword [eax + 4]
mov dword [ecx + 4], edx
mov edx, dword [eax + 8]
mov dword [ecx + 8], edx
mov eax, dword [eax + 0xc]
mov dword [ecx + 0xc], eax
mov eax, dword [edi + 0x78]
mov edx, 0x10
add dword [eax + 8], edx
mov esi, dword [ebx + 0x88]
mov ecx, dword [edi + 0x78]
mov ecx, dword [ecx + 8]
mov dword [ecx], esi
mov esi, dword [ebx + 0x8c]
lea eax, [ebx + 0x88]
mov dword [ecx + 4], esi
mov esi, dword [eax + 8]
mov dword [ecx + 8], esi
mov eax, dword [eax + 0xc]
mov dword [ecx + 0xc], eax
mov eax, dword [edi + 0x78]
add dword [eax + 8], edx
mov eax, dword [esp + 0x18]
mov esi, dword [edi + 0x78]
push 3
call fcn.004447a0
mov edx, dword [edi + 0x78]
or ecx, 0xffffffff
sub ecx, dword [esp + 0x14]
add esp, 4
push ecx
push edx
call fcn.00443d70
add dword [esp + 0x1c], 1
mov esi, dword [esp + 0x1c]
add esp, 8
add dword [esp + 0x30], 0x98
jmp 0x42e910
cmp byte [0x5eebd6], 0
je 0x42eaeb
push str._nDONE__n
call fcn.004255f0
add esp, 4
cmp dword [esp + 0x2b0], 8
jb 0x42eb05
mov eax, dword [esp + 0x29c]
push eax
call fcn.0050b609
add esp, 4
xor ebx, ebx
mov byte [esp + 0x3c8], bl
mov eax, dword [esp + 0x78]
push eax
lea ecx, [esp + 0x78]
push ecx
mov dword [esp + 0x2b8], 7
mov dword [esp + 0x2b4], ebx
mov word [esp + 0x2a4], bx
mov edx, dword [eax]
mov esi, ecx
push edx
push esi
lea ecx, [esp + 0xb4]
push ecx
mov edi, esi
call fcn.0043eec0
mov edx, dword [esp + 0x78]
push edx
call fcn.0050b609
add esp, 4
mov dword [esp + 0x3c8], 0xffffffff
mov eax, dword [esp + 0x40]
push eax
lea ecx, [esp + 0x40]
push ecx
mov dword [esp + 0x80], ebx
mov dword [esp + 0x84], ebx
mov edx, dword [eax]
push edx
mov esi, ecx
push esi
lea eax, [esp + 0xb4]
push eax
mov edi, ecx
call fcn.0043f040
mov ecx, dword [esp + 0x40]
push ecx
call fcn.0050b609
add esp, 4
mov al, 1
mov ecx, dword [esp + 0x3c0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x3a8]
xor ecx, esp
call fcn.0050bc9c
mov esp, ebp
pop ebp
ret