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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4c240e
mov eax, dword fs:[0]
push eax
push ecx
mov eax, 0x2f54
call fcn.004af840
mov eax, dword [0x4d8620]
xor eax, esp
mov dword [esp + 0x2f50], eax
push ebx
push esi
push edi
mov eax, dword [0x4d8620]
xor eax, esp
push eax
lea eax, [esp + 0x2f68]
mov dword fs:[0], eax
xor esi, esi
push 0x1200
mov dword [esp + 0x4c], 0xffffffff
mov dword [esp + 0x60], esi
mov dword [esp + 0x18], esi
mov dword [esp + 0x48], esi
mov dword [esp + 0x44], esi
mov dword [esp + 0x28], esi
mov dword [esp + 0x2c], esi
mov dword [esp + 0x38], esi
mov dword [esp + 0x3c], esi
mov dword [esp + 0x5c], esi
mov dword [esp + 0x20], esi
call fcn.004af0e6
mov edi, eax
add esp, 4
mov dword [esp + 0x4c], edi
cmp edi, esi
jne 0x42d528
mov ecx, 0x513904
call fcn.00429a10
mov eax, 0x40
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], eax
mov dword [esp + 0x2f70], esi
lea ecx, [esp + 0x1c4]
call fcn.0046fbd0
mov byte [esp + 0x2f70], 1
mov dword [esp + 0x60], esi
mov dword [esp + 0x64], esi
mov dword [esp + 0x68], esi
mov byte [esp + 0x2f70], 2
lea ecx, [esp + 0x11c]
call fcn.0046fbd0
mov byte [esp + 0x2f70], 3
mov dword [0x5161c0], edi
mov dword [0x514f80], 1
jmp 0x42d590
cmp byte [0x527e58], 0
jne 0x42e560
mov edi, dword [esp + 0x50]
mov esi, dword [esp + 0x54]
xor eax, eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x30], 1
mov eax, dword [esp + 0x3c]
cmp eax, 0x40
jl 0x42d5cd
cmp byte [0x526b9c], 0
je 0x42da69
cmp eax, edi
jl 0x42d629
mov eax, dword [esp + 0x30]
cmp eax, esi
jbe 0x42d623
sub eax, edi
add edi, eax
mov dword [esp + 0x50], edi
cmp edi, esi
jbe 0x42d629
mov eax, esi
shr eax, 2
lea esi, [eax + esi + 0x20]
cmp edi, esi
jbe 0x42d5f4
mov esi, edi
mov edx, dword [esp + 0x4c]
lea ecx, [esi + esi*8]
add ecx, ecx
add ecx, ecx
add ecx, ecx
push ecx
push edx
call fcn.004af23e
add esp, 8
mov dword [esp + 0x4c], eax
test eax, eax
jne 0x42d61d
mov ecx, 0x513904
call fcn.00429a10
mov dword [esp + 0x54], esi
jmp 0x42d629
mov edi, eax
mov dword [esp + 0x50], edi
mov ecx, dword [esp + 0x4c]
mov eax, dword [esp + 0x20]
push 4
add eax, ecx
push 0x514fb4
mov dword [0x5161c0], eax
call fcn.00436620
test eax, eax
je 0x42d982
push 4
push 0x52622d
push 0x514fb4
call fcn.004b0c56
add esp, 0xc
test eax, eax
jne 0x42d98f
call fcn.0045a770
test eax, eax
jne 0x42da3e
movzx eax, byte [0x526261]
movzx ecx, word [0x526280]
push eax
push 0x526264
push 2
xor edx, edx
push ecx
mov word [0x526304], dx
call fcn.00436b40
mov ebx, dword [esp + 0x14]
test eax, eax
je 0x42d6b5
cmp eax, ebx
jle 0x42d6ac
mov ebx, eax
mov dword [esp + 0x14], ebx
cmp eax, 1
jg 0x42da44
movzx edx, word [0x526282]
push 0
push 0
push 3
push edx
call fcn.00436b40
test eax, eax
je 0x42d6df
cmp eax, ebx
jle 0x42d6d6
mov ebx, eax
mov dword [esp + 0x14], ebx
cmp eax, 1
jg 0x42da44
movzx eax, word [0x526282]
mov ecx, dword [0x526220]
push 0
push eax
push ecx
call fcn.00459eb0
movzx edx, word [0x526282]
mov eax, dword [0x526220]
push 0x526266
push edx
push eax
call fcn.004771e0
movzx ecx, word [0x526284]
push 0
push 0
push 0
push ecx
call fcn.00436b40
test eax, eax
je 0x42d735
cmp eax, ebx
jle 0x42d72c
mov dword [esp + 0x14], eax
cmp eax, 1
jg 0x42da44
mov eax, dword [0x526264]
movzx ecx, word [0x526282]
shr eax, 0xb
and al, 1
push 0x1800
mov byte [esp + 0x1f], al
mov eax, dword [0x526b04]
lea edx, [esp + 0x1760]
push edx
push eax
mov eax, dword [0x526220]
push ecx
call fcn.0042ca50
test al, al
je 0x42d788
push 0x400
push 0x526304
lea edx, [esp + 0x1764]
push edx
call fcn.00477d90
mov byte [esp + 0x1b], 1
movzx ecx, word [0x526268]
movzx edx, word [0x52626a]
lea eax, [esp + 0xa8]
push eax
push ecx
push edx
call dword [sym.imp.KERNEL32.dll_DosDateTimeToFileTime]
mov eax, dword [0x5161c0]
add eax, 0x28
push eax
lea ecx, [esp + 0xac]
push ecx
call dword [sym.imp.KERNEL32.dll_LocalFileTimeToFileTime]
mov ecx, dword [0x5161c0]
xor eax, eax
mov dword [ecx + 0x30], eax
add ecx, 0x30
mov dword [ecx + 4], eax
mov ecx, dword [0x5161c0]
add ecx, 0x38
mov dword [ecx], eax
mov dword [ecx + 4], eax
mov eax, dword [0x5161c0]
lea edx, [eax + 0x38]
lea ecx, [eax + 0x30]
push edx
push ecx
mov ecx, dword [0x526220]
add eax, 0x28
push eax
movzx eax, word [0x526282]
call fcn.0042c960
movzx eax, word [0x526282]
mov ecx, dword [0x526220]
call fcn.0042cb10
mov bl, al
test bl, bl
je 0x42d834
push 0x526304
push 0x343
call fcn.00466160
push eax
push 0x5362aa
call fcn.00498e30
add esp, 0xc
lea ecx, [esp + 0x26c]
call fcn.00402160
mov byte [esp + 0x2f70], 4
push 0xce8
lea edx, [esp + 0x270]
push 0
push edx
call fcn.004af870
add esp, 0xc
push 0x400
push 0x526304
lea eax, [esp + 0x6a4]
push eax
call fcn.0046f500
push 0x400
lea ecx, [esp + 0x2a0]
push ecx
lea edx, [esp + 0x6a4]
push edx
call fcn.00455d20
mov eax, dword [0x5161c0]
add eax, 0x28
push eax
lea ecx, [esp + 0xeb4]
call fcn.00472620
mov eax, dword [esp + 0x274]
mov ecx, dword [0x526278]
mov edx, dword [0x52627c]
or eax, 0x200
cmp dword [0x5275a4], 1
mov word [esp + 0x274], ax
mov dword [esp + 0xf4c], ecx
mov dword [esp + 0xf50], edx
mov eax, 5
je 0x42d8f8
cmp dword [0x533860], 0
jne 0x42d8f8
cmp byte [0x535254], 0
jne 0x42d8f8
mov eax, CreateMappedBitmap
test bl, bl
jne 0x42d953
push eax
push 0
lea ecx, [esp + 0x274]
push ecx
mov ecx, 0x52fee8
call fcn.0041cdc0
test eax, eax
je 0x42d953
call fcn.0042c5d0
test eax, eax
je 0x42d94f
mov eax, 0x526304
cmp byte [esp + 0x1b], bl
jne 0x42d92e
mov eax, 0x4c5d70
push eax
lea ecx, [esp + 0x1c8]
call fcn.0046fc80
mov eax, 1
add dword [esp + 0x3c], eax
add dword [esp + 0x30], eax
add dword [esp + 0x20], 0x48
jmp 0x42d953
inc dword [esp + 0x44]
add dword [esp + 0x34], 1
adc dword [esp + 0x38], 0
mov byte [esp + 0x2f70], 3
mov eax, dword [esp + 0xe9c]
test eax, eax
je 0x42d5b7
push eax
call fcn.004af1b0
add esp, 4
jmp 0x42d5b7
mov dword [esp + 0x14], 0x33
jmp 0x42da61
mov edx, dword [0x5262a8]
mov eax, edx
xor eax, dword [esp + 0x34]
xor ecx, ecx
and eax, 0xffff
or eax, ecx
je 0x42d9db
cmp edx, 0xffff
jne 0x42d9b6
cmp dword [0x5262ac], ecx
je 0x42d9db
push 0x2ad
call fcn.00466160
push eax
push 0x5362aa
call fcn.00498e30
add esp, 8
mov dword [esp + 0x14], 3
jmp 0x42da61
push 4
push 0x526232
push 0x514fb4
mov byte [esp + 0xf60], 0x50
mov dword [esp + 0xf61], 0x6064b
call fcn.004b0c56
add esp, 0xc
test eax, eax
je 0x42da34
cmp byte [0x526ba4], 0
je 0x42da2a
push 4
lea edx, [esp + 0xf58]
push edx
push 0x514fb4
call fcn.004b0c56
add esp, 0xc
test eax, eax
je 0x42da34
mov dword [esp + 0x58], 1
jmp 0x42da61
mov dword [esp + 0x58], 0
jmp 0x42da61
mov dword [esp + 0x14], eax
jmp 0x42da61
push 0x526304
push 0x2ab
call fcn.00466160
push eax
push 0x5362aa
call fcn.00498e30
add esp, 0xc
mov dword [esp + 0x1c], 1
mov eax, dword [0x526210]
mov ecx, dword [0x526214]
mov edx, dword [0x5261d0]
mov dword [esp + 0x8c], eax
mov eax, dword [0x5261d8]
mov dword [esp + 0x90], ecx
mov ecx, dword [0x5261dc]
xor esi, esi
cmp byte [0x526b9c], 0
mov dword [esp + 0x80], edx
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], ecx
je 0x42db23
cmp byte [0x535eaa], 0
mov dword [0x526ba0], esi
je 0x42dad1
push 0x4c6fe0
push 0x535eaa
call fcn.00457cf0
cmp word [0x5362aa], si
je 0x42dae9
push 0x4c5b08
push 0x5362aa
call fcn.00457d90
mov ecx, dword [0x5261f0]
cmp ecx, esi
je 0x42dafb
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
mov dword [0x5261f0], esi
call fcn.00436250
cmp byte [0x53395a], 0
push 0x5362aa
sete cl
push esi
lea ecx, [ecx*4 + 0x54]
push ecx
call fcn.0048bf50
cmp dword [esp + 0x3c], esi
mov dword [esp + 0x20], esi
jle 0x42e4e7
mov eax, dword [esp + 0x5c]
shl eax, 6
mov dword [esp + 0x30], eax
lea esp, [esp]
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x4c]
add edx, eax
lea eax, [eax + eax*8]
mov dword [esp + 0x48], edx
lea edx, [ecx + eax*8]
lea ecx, [esp + 0x1c4]
mov dword [0x5161c0], edx
call fcn.0046fef0
cmp byte [0x526b9c], 0
mov dword [esp + 0x94], eax
je 0x42dc32
mov eax, dword [0x5161c0]
mov eax, dword [eax + 0x20]
cmp eax, dword [0x526ba0]
je 0x42dc32
movzx ecx, word [0x526298]
cmp eax, ecx
jne 0x42dbd0
cmp byte [0x535eaa], 0
je 0x42dbb5
push 0x4c6fdc
push 0x535eaa
call fcn.00457cf0
cmp word [0x5362aa], 0
je 0x42dc02
push 0x4c5abc
push 0x5362aa
call fcn.00457d90
jmp 0x42dc02
cmp byte [0x535eaa], 0
je 0x42dbe4
push eax
push 0x535eaa
call fcn.0042c900
cmp word [0x5362aa], 0
je 0x42dc02
mov edx, dword [0x5161c0]
mov eax, dword [edx + 0x20]
push eax
push 0x5362aa
call fcn.0042cc10
mov ecx, dword [0x5161c0]
mov edx, dword [ecx + 0x20]
mov ecx, dword [0x5261f0]
mov dword [0x526ba0], edx
test ecx, ecx
je 0x42dc23
mov eax, dword [ecx]
mov edx, dword [eax]
push 1
call edx
mov dword [0x5261f0], 0
call fcn.00436250
mov eax, dword [0x5161c0]
mov ebx, dword [eax]
add ebx, dword [0x526218]
mov esi, dword [eax + 4]
adc esi, dword [0x52621c]
push 0
push 0x2000
push esi
push ebx
call fcn.004b13f0
mov edi, eax
mov eax, ebx
sub eax, edi
mov ecx, esi
sbb ecx, edx
mov dword [esp + 0x78], edx
test esi, esi
jg 0x42dd18
jl 0x42dc76
test ebx, ebx
jae 0x42dd18
push 0x2ad
call fcn.00466160
push eax
push 0x5362aa
call fcn.00498e30
add esp, 8
cmp dword [esp + 0x48], 0
mov dword [esp + 0x14], 2
jne 0x42dd0b
mov eax, dword [0x526218]
mov ecx, dword [0x52621c]
mov edx, eax
or edx, ecx
je 0x42dd0b
mov dword [esp + 0x28], ecx
xor ecx, ecx
push ecx
mov dword [esp + 0x28], eax
mov eax, dword [0x5161c0]
mov dword [0x526218], ecx
mov dword [0x52621c], ecx
mov ebx, dword [eax + 4]
mov esi, dword [eax]
push 0x2000
push ebx
push esi
call fcn.004b13f0
mov edi, eax
mov eax, esi
sub eax, edi
mov ecx, ebx
sbb ecx, edx
mov dword [esp + 0x78], edx
test ebx, ebx
jg 0x42dd18
jl 0x42dcf3
test esi, esi
jae 0x42dd18
push 0x2ad
call fcn.00466160
push eax
push 0x5362aa
call fcn.00498e30
add esp, 8
mov dword [esp + 0x14], 3
jmp case.0x42e2a3.78
cmp eax, dword [0x526210]
jne 0x42dd57
cmp ecx, dword [0x526214]
jne 0x42dd57
cmp byte [0x526b9c], 0
jne 0x42dd57
mov eax, dword [0x5261d0]
mov ecx, dword [0x5261cc]
sub eax, edi
sub eax, ecx
cdq
add dword [0x5261d8], eax
adc dword [0x5261dc], edx
add edi, ecx
mov dword [0x5261d0], edi
jmp 0x42ddd0
push 0
push ecx
mov ecx, dword [0x5261f0]
push eax
call fcn.004319b0
mov ecx, dword [0x5261f0]
call fcn.00431210
mov dword [0x526210], eax
mov eax, dword [0x5261cc]
push 0x2000
push eax
mov dword [0x526214], edx
call fcn.00436480
cdq
mov ecx, edx
mov esi, eax
mov dword [0x5261d8], esi
mov dword [0x5261dc], ecx
test ecx, ecx
jg 0x42ddaf
jl 0x42dcf3
test esi, esi
jbe 0x42dcf3
mov edx, dword [0x5261cc]
lea eax, [edi + edx]
mov dword [0x5261d0], eax
mov eax, edi
cdq
sub esi, eax
sbb ecx, edx
mov dword [0x5261d8], esi
mov dword [0x5261dc], ecx
push 4
push 0x514fb4
call fcn.00436620
test eax, eax
je 0x42dcf3
push 4
push 0x526228
push 0x514fb4
call fcn.004b0c56
add esp, 0xc
test eax, eax
je 0x42dec7
push 0x2ad
call fcn.00466160
push eax
push 0x5362aa
call fcn.00498e30
mov eax, dword [0x526218]
mov ecx, dword [0x52621c]
add esp, 8
cmp dword [esp + 0x48], 0
mov edi, 2
mov dword [esp + 0x14], edi
mov edx, eax
jne 0x42de3b
or edx, ecx
jne 0x42de5b
jmp 0x42de43
or edx, ecx
jne case.0x42e2a3.78
mov edx, dword [esp + 0x24]
mov esi, dword [esp + 0x28]
mov ebx, edx
or ebx, esi
je case.0x42e2a3.78
mov ebx, eax
or ebx, ecx
je 0x42de71
mov dword [esp + 0x24], eax
xor eax, eax
mov dword [esp + 0x28], ecx
mov dword [0x526218], eax
mov dword [0x52621c], eax
jmp 0x42de7d
mov dword [0x526218], edx
mov dword [0x52621c], esi
mov eax, dword [0x5161c0]
mov ecx, dword [eax + 4]
mov edx, dword [eax]
push ecx
push edx
call fcn.00436880
test eax, eax
jne 0x42dcf3
push 4
push 0x514fb4
call fcn.00436620
test eax, eax
je 0x42dcf3
push 4
push 0x526228
push 0x514fb4
call fcn.004b0c56
add esp, 0xc
test eax, eax
je 0x42decb
jmp 0x42dcf3
mov edi, dword [esp + 0x14]
call fcn.0045a040
mov esi, eax
test esi, esi
je 0x42def7
push 0x2ad
call fcn.00466160
push eax
push 0x5362aa
call fcn.00498e30
add esp, 8
mov dword [esp + 0x14], esi
jmp case.0x42e2a3.78
movzx ecx, word [0x526258]
xor eax, eax
push eax
push 0x52623a
push 2
push ecx
mov word [0x526304], ax
call fcn.00436b40
test eax, eax
je 0x42df49
cmp eax, edi
jle 0x42df22
mov edi, eax
mov dword [esp + 0x14], edi
cmp eax, 1
jle 0x42df49
push 0x526304
push 0x2ab
call fcn.00466160
push eax
push 0x5362aa
call fcn.00498e30
add esp, 0xc
jmp case.0x42e2a3.78
mov eax, dword [0x526220]
test eax, eax
je 0x42df65
push eax
call fcn.004af1b0
add esp, 4
mov dword [0x526220], 0
movzx edx, word [0x52625a]
push 0
push 0
push 3
push edx
call fcn.00436b40
test eax, eax
je 0x42df89
cmp eax, edi
jle 0x42df84
mov dword [esp + 0x14], eax
cmp eax, 1
jg 0x42df27
movzx eax, word [0x52625a]
mov ecx, dword [0x526220]
push 1
push eax
push ecx
call fcn.00459eb0
mov eax, dword [0x526b04]
movzx ecx, word [0x52625a]
push 0x1800
lea edx, [esp + 0x1760]
push edx
push eax
mov eax, dword [0x526220]
push ecx
call fcn.0042ca50
test al, al
je 0x42dfdf
push 0x400
push 0x526304
lea edx, [esp + 0x1764]
push edx
call fcn.00477d90
mov eax, dword [0x5161c0]
mov ecx, dword [eax + 0x28]
mov dword [0x526b08], ecx
mov edx, dword [eax + 0x2c]
mov dword [0x526b0c], edx
mov ecx, dword [eax + 0x30]
mov dword [0x526b10], ecx
mov edx, dword [eax + 0x34]
mov dword [0x526b14], edx
mov ecx, dword [eax + 0x38]
mov dword [0x526b18], ecx
mov edx, dword [eax + 0x3c]
lea eax, [esp + 0x6c]
push eax
movzx eax, word [0x52625a]
lea ecx, [esp + 0xa4]
mov dword [0x526b1c], edx
push ecx
mov ecx, dword [0x526220]
lea edx, [esp + 0xa0]
push edx
call fcn.0042c960
test al, al
je 0x42e08b
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 0x9c]
mov edx, dword [esp + 0xa0]
mov dword [0x526b08], eax
mov eax, dword [esp + 0xa4]
mov dword [0x526b0c], ecx
mov ecx, dword [esp + 0x6c]
mov dword [0x526b10], edx
mov edx, dword [esp + 0x70]
mov dword [0x526b14], eax
mov dword [0x526b18], ecx
mov dword [0x526b1c], edx
movzx eax, word [0x52625a]
mov ecx, dword [0x526220]
push 0x52623c
push eax
push ecx
call fcn.004771e0
mov eax, dword [esp + 0x94]
test eax, eax
je 0x42e0c5
cmp word [eax], 0
je 0x42e0c5
push 0x400
push eax
push 0x526304
call fcn.0046f500
push 0x526304
call fcn.004556e0
cmp word [eax], 0x5c
sete bl
test bl, bl
je 0x42e0df
xor edx, edx
mov word [eax], dx
cmp word [0x526304], 0
je 0x42e119
cmp word [0x526306], 0
je 0x42e119
cmp word [0x526308], 0
mov eax, 0x526308
je 0x42e119
cmp word [eax], 0x3a
jne 0x42e110
mov ecx, 0x5f
mov word [eax], cx
add eax, 2
cmp word [eax], 0
jne 0x42e102
push 0x526304
push 0x526304
call fcn.00455ff0
push 0x400
push 0x526304
push 0
call fcn.0040a340
mov eax, dword [0x5161c0]
test byte [eax + 0x24], 0x10
je 0x42e152
mov eax, dword [eax + 0x1c]
test eax, eax
je 0x42e150
cmp eax, 0xb
jne 0x42e152
mov bl, 1
cmp byte [0x535279], 0x49
movzx ecx, byte [0x53395a]
sete dl
push 0
movzx eax, dl
push eax
push ecx
push 0x526304
push 0
call fcn.00409f20
test al, al
je 0x42e4e7
movsx edx, byte [0x535279]
push edx
call fcn.004b08d1
add esp, 4
cmp eax, 0x49
jne 0x42e1b2
push 0x526304
push 0
push 0x5362aa
push 0x535eaa
push 0x53527a
push 0
push 0
call fcn.00438100
cmp byte [0x53395a], 0
jne case.0x42e2a3.89
xor esi, esi
test bl, bl
jne 0x42e2eb
lea esp, [esp]
push 0x526304
call fcn.00436a70
cmp eax, 0xffffffff
je 0x42e2d1
test eax, eax
je 0x42e214
cmp eax, 1
jne case.0x42e2a3.89
mov eax, dword [0x533810]
cmp eax, 2
je case.0x42e2a3.78
cmp byte [0x533831], 0
jne 0x42e210
cmp byte [0x533830], 0
je 0x42e222
test esi, esi
jmp 0x42e21c
mov eax, dword [0x533810]
cmp eax, 2
je case.0x42e2a3.78
test eax, eax
je case.0x42e2a3.66
cmp eax, 3
jne case.0x42e2a3.89
nop
xor eax, eax
jmp 0x42e240
movzx ecx, word [eax + 0x526304]
mov word [esp + eax + 0xf5c], cx
add eax, 2
test cx, cx
jne 0x42e240
movzx eax, word [0x526240]
movzx ecx, word [0x52623e]
mov edx, dword [0x514fa4]
push 0
shl eax, 0x10
add eax, ecx
push eax
mov eax, dword [0x514fa0]
push edx
push eax
lea ecx, [esp + 0xf6c]
push ecx
push 0
call fcn.0040b080
cmp al, 0x43
je 0x42e4e7
movsx eax, al
add eax, 0xffffffbf
cmp eax, 0x38
ja case.0x42e2a3.66
movzx edx, byte [eax + 0x42e8c0]
jmp dword [edx*4 + 0x42e8ac]
xor eax, eax
lea esp, [esp]
movzx ecx, word [esp + eax + 0xf5c]
mov word [eax + 0x526304], cx
add eax, 2
test cx, cx
jne 0x42e2b0
mov esi, 1
jmp 0x42e1d0
cmp byte [0x533830], 0
je case.0x42e2a3.89
test esi, esi
je case.0x42e2a3.78
jmp case.0x42e2a3.89
cmp byte [0x533830], 0
jne case.0x42e2a3.78
cmp word [0x526304], 0
je case.0x42e2a3.78
cmp dword [0x533834], 1
je case.0x42e2a3.78
mov ecx, dword [0x5161c0]
mov eax, dword [ecx + 0x1c]
xor esi, esi
test eax, eax
je 0x42e327
cmp eax, 0xb
jne 0x42e32a
mov esi, dword [ecx + 0x24]
push 0x526304
call fcn.00432480
test al, al
jne 0x42e3c2
cmp byte [0x5338fb], al
push esi
sete al
movzx ecx, al
push ecx
push 0x526304
push 0
call fcn.00432c70
test eax, eax
je 0x42e3c2
push 1
push 0x526304
call fcn.00432e40
cmp byte [0x5338fb], 0
push esi
sete dl
movzx eax, dl
push eax
push 0x526304
push 0
call fcn.00432c70
test eax, eax
je 0x42e3c2
push 0x526304
push 0x1f7
call fcn.00466160
push eax
push 0x5362aa
call fcn.00498e30
add esp, 0xc
push 0x526304
push 0
mov ecx, 0x513904
call fcn.00429790
mov ecx, 0x513904
call fcn.00429940
jmp case.0x42e2a3.78
push 0x526304
lea ecx, [esp + 0x120]
call fcn.0046fc80
mov ecx, dword [0x526b0c]
mov edx, dword [0x526b08]
push ecx
push edx
lea ecx, [esp + 0x68]
call fcn.0042cc70
mov eax, dword [0x526b1c]
mov ecx, dword [0x526b18]
push eax
push ecx
lea ecx, [esp + 0x68]
call fcn.0042cc70
mov edx, dword [0x526b14]
mov eax, dword [0x526b10]
push edx
push eax
lea ecx, [esp + 0x68]
call fcn.0042cc70
jmp case.0x42e2a3.78
mov dword [0x533810], 1
mov ecx, dword [0x5161c0]
test byte [ecx + 0x40], 1
je 0x42e4a6
call fcn.004779d0
test eax, eax
je 0x42e4a6
cmp eax, 9
je 0x42e6de
cmp eax, 1
jne 0x42e48d
cmp dword [0x514f60], 0
jne 0x42e487
cmp dword [0x526b20], 0
je 0x42e46a
push 0
call fcn.00498840
add esp, 4
inc dword [esp + 0x40]
jmp case.0x42e2a3.78
push 0x526304
push 0x1fb
call fcn.00466160
push eax
push 0x5362aa
call fcn.00498e30
add esp, 0xc
inc dword [esp + 0x40]
jmp case.0x42e2a3.78
cmp eax, dword [esp + 0x14]
jle 0x42e497
mov dword [esp + 0x14], eax
push 0x526304
push 0x1fb
jmp 0x42df31
mov dword [0x5262d4], 0
call fcn.0042ce20
test eax, eax
je case.0x42e2a3.78
mov esi, dword [esp + 0x14]
cmp eax, esi
jle 0x42e4c7
mov esi, eax
mov dword [esp + 0x14], esi
cmp dword [0x5262d4], 1
jg 0x42e6ed
mov eax, dword [esp + 0x20]
inc eax
cmp eax, dword [esp + 0x3c]
mov dword [esp + 0x20], eax
jl 0x42db40
mov edx, dword [esp + 0x90]
mov eax, dword [esp + 0x8c]
mov ecx, dword [0x5261f0]
push 0
push edx
push eax
call fcn.004319b0
mov ecx, dword [0x5261f0]
call fcn.00431210
mov ecx, dword [0x5261cc]
push 0x2000
push ecx
mov dword [0x526210], eax
mov dword [0x526214], edx
call fcn.00436480
mov edx, dword [esp + 0x80]
mov eax, dword [esp + 0x84]
mov ecx, dword [esp + 0x88]
inc dword [esp + 0x5c]
cmp dword [esp + 0x1c], 0
mov dword [0x5261d0], edx
mov dword [0x5261d8], eax
mov dword [0x5261dc], ecx
je 0x42d590
push 0x400
lea edx, [esp + 0xf60]
push edx
lea ecx, [esp + 0x124]
call fcn.0046ff90
test al, al
je 0x42e692
mov esi, dword [esp + 0x60]
add esi, 0x10
jmp 0x42e590
mov eax, dword [esi - 0x10]
mov dword [esp + 0x6c], eax
mov ecx, dword [esi - 0xc]
mov dword [esp + 0x70], ecx
mov edx, dword [esi - 8]
mov dword [esp + 0x34], edx
mov eax, dword [esi - 4]
mov dword [esp + 0x38], eax
mov ecx, dword [esi]
mov dword [esp + 0x24], ecx
mov edx, dword [esi + 4]
lea ecx, [esp + 0xf8]
mov dword [esp + 0x28], edx
call fcn.00472610
lea ecx, [esp + 0xd4]
call fcn.00472610
lea ecx, [esp + 0xb0]
call fcn.00472610
cmp dword [0x533e24], 0
je 0x42e5f7
lea eax, [esp + 0x6c]
push eax
lea ecx, [esp + 0xfc]
call fcn.00472620
cmp dword [0x533e28], 0
je 0x42e61f
cmp dword [esp + 0x38], 0
jne 0x42e60e
cmp dword [esp + 0x34], 0
je 0x42e61f
lea ecx, [esp + 0x34]
push ecx
lea ecx, [esp + 0xd8]
call fcn.00472620
cmp dword [0x533e2c], 0
je 0x42e647
cmp dword [esp + 0x28], 0
jne 0x42e636
cmp dword [esp + 0x24], 0
je 0x42e647
lea edx, [esp + 0x24]
push edx
lea ecx, [esp + 0xb4]
call fcn.00472620
lea eax, [esp + 0xb0]
push eax
lea ecx, [esp + 0xd8]
push ecx
lea edx, [esp + 0x100]
push edx
lea eax, [esp + 0xf68]
push eax
push 0
call fcn.00432fd0
push 0x400
lea ecx, [esp + 0xf60]
push ecx
lea ecx, [esp + 0x124]
add esi, 0x18
call fcn.0046ff90
test al, al
jne 0x42e590
cmp byte [0x527e58], 0
jne 0x42e751
cmp dword [esp + 0x58], 0
je 0x42e751
cmp byte [0x526b9c], 0
jne 0x42e751
push 0x2ad
call fcn.00466160
push eax
push 0x5362aa
call fcn.00498e30
mov ebx, dword [esp + 0x1c]
add esp, 8
test ebx, ebx
jne 0x42e755
mov ebx, 1
jmp 0x42e755
push 0
call fcn.00498840
add esp, 4
jmp 0x42e560
mov byte [esp + 0x2f70], 2
lea ecx, [esp + 0x11c]
call fcn.00401a70
mov byte [esp + 0x2f70], 1
mov eax, dword [esp + 0x60]
test eax, eax
je 0x42e71a
push eax
call fcn.004af1b0
add esp, 4
mov byte [esp + 0x2f70], 0
lea ecx, [esp + 0x1c4]
call fcn.00401a70
mov dword [esp + 0x2f70], 0xffffffff
mov eax, dword [esp + 0x4c]
test eax, eax
je 0x42e74a
push eax
call fcn.004af1b0
add esp, 4
mov eax, esi
jmp 0x42e887
mov ebx, dword [esp + 0x14]
mov esi, dword [esp + 0x48]
movzx edi, word [esp + 0x40]
inc esi
cmp esi, edi
jne 0x42e78d
cmp byte [0x535279], 0x49
je 0x42e78d
cmp dword [0x526b20], 0
jne 0x42e78d
push 0x345
call fcn.00466160
push eax
push 0x5362aa
call fcn.00498e30
add esp, 8
test esi, esi
jne 0x42e7a8
cmp ebx, 1
jg 0x42e7a8
xor dx, dx
cmp dx, word [esp + 0x44]
sbb ebx, ebx
and ebx, 0x46
add ebx, 0xb
jmp 0x42e7dd
cmp esi, edi
jne 0x42e7b8
cmp ebx, 1
jg 0x42e7b8
mov ebx, 0x52
jmp 0x42e7dd
cmp word [esp + 0x44], 0
jbe 0x42e7cc
cmp ebx, 1
jg 0x42e7cc
mov ebx, 0x51
jmp 0x42e7dd
cmp word [esp + 0x40], 0
jbe 0x42e7dd
test ebx, ebx
jne 0x42e7dd
mov ebx, 1
mov byte [esp + 0x2f70], 6
mov eax, dword [esp + 0x12c]
test eax, eax
je 0x42e7f9
push eax
call fcn.004af1b0
add esp, 4
mov byte [esp + 0x2f70], 2
mov eax, dword [esp + 0x11c]
test eax, eax
je 0x42e815
push eax
call fcn.004af1b0
add esp, 4
mov byte [esp + 0x2f70], 1
cmp dword [esp + 0x60], 0
je 0x42e831
mov eax, dword [esp + 0x60]
push eax
call fcn.004af1b0
add esp, 4
mov byte [esp + 0x2f70], 8
mov eax, dword [esp + 0x1d4]
test eax, eax
je 0x42e84d
push eax
call fcn.004af1b0
add esp, 4
mov byte [esp + 0x2f70], 0
mov eax, dword [esp + 0x1c4]
test eax, eax
je 0x42e869
push eax
call fcn.004af1b0
add esp, 4
mov dword [esp + 0x2f70], 0xffffffff
mov eax, dword [esp + 0x4c]
test eax, eax
je 0x42e885
push eax
call fcn.004af1b0
add esp, 4
mov eax, ebx
mov ecx, dword [esp + 0x2f68]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x2f50]
xor ecx, esp
call fcn.004af00b
mov esp, ebp
pop ebp
ret