Function at 0x420435
Capabilities:
Parse pe header

Disassembly:
push ebp
push ebx
push edi
mov edx, 0xa
sub esp, 4
mov dword [esp], 0
dec edx
jne 0x42043d
call fcn.004ad560
mov edx, dword [esp + 0x38]
lea ecx, [esp]
call fcn.00453000
mov edx, 0x5370c4
lea ecx, [0x15e7828]
call fcn.00453008
mov dword [0x15e78f4], 0
push edx
call fcn.004ad3c0
pop edx
push eax
mov edx, dword [esp + 4]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
mov edx, 0x540028
push edx
call fcn.004ad490
call fcn.00453382
add dword [esp], edx
call fcn.00499903
call fcn.004533a0
push edx
push eax
pop ebx
pop edi
cmp ebx, 0xfffffffe
jne 0x4204ba
cmp edi, 0xffffffff
je 0x4204be
xor eax, eax
jmp 0x4204c3
mov eax, 1
or eax, eax
je 0x420550
mov edx, dword [esp]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
lea eax, [0x15e78bc]
push eax
call fcn.004ad400
push dword [0x15e7a70]
push dword [0x15e78bc]
call fcn.004ab0b0
mov ebx, eax
and ebx, ebx
jle 0x420521
mov edx, dword [0x15e7a38]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
lea eax, [0x15e7a08]
push eax
call fcn.004ad400
jmp 0x420541
mov edx, dword [0x15e78bc]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
lea eax, [0x15e7a08]
push eax
call fcn.004ad400
mov dword [0x15e7964], 1
jmp 0x420861
push edx
call fcn.004ad3c0
pop edx
push eax
mov edx, dword [esp + 4]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
mov edx, 0x540808
push edx
call fcn.004ad490
call fcn.00453382
add dword [esp], edx
call fcn.00499903
call fcn.004533a0
push edx
push eax
pop ebx
pop edi
cmp ebx, 0xfffffffe
jne 0x420595
cmp edi, 0xffffffff
je 0x420599
xor eax, eax
jmp 0x42059e
mov eax, 1
or eax, eax
je 0x420651
mov edx, dword [esp]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
mov edx, 0x5424de
push edx
call fcn.004ad490
lea eax, [esp + 4]
push eax
call fcn.004ad400
mov edx, dword [esp]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
lea eax, [0x15e78bc]
push eax
call fcn.004ad400
push dword [0x15e7a70]
push dword [0x15e78bc]
call fcn.004ab0b0
mov ebx, eax
and ebx, ebx
jle 0x420622
mov edx, dword [0x15e7a38]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
lea eax, [0x15e7a08]
push eax
call fcn.004ad400
jmp 0x420642
mov edx, dword [0x15e78bc]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
lea eax, [0x15e7a08]
push eax
call fcn.004ad400
mov dword [0x15e7964], 1
jmp 0x420861
push edx
call fcn.004ad3c0
pop edx
push eax
mov edx, dword [0x15e7a70]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
mov edx, 0x540028
push edx
call fcn.004ad490
call fcn.00453382
add dword [esp], edx
call fcn.00499903
call fcn.004533a0
push edx
push eax
pop ebx
pop edi
cmp ebx, 0xfffffffe
jne 0x420698
cmp edi, 0xffffffff
je 0x42069c
xor eax, eax
jmp 0x4206a1
mov eax, 1
or eax, eax
je 0x42074f
mov edx, dword [0x15e7a70]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
lea eax, [esp + 4]
push eax
call fcn.004ad400
mov edx, dword [0x15e7a70]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
lea eax, [0x15e78bc]
push eax
call fcn.004ad400
push dword [0x15e7a70]
push dword [0x15e78bc]
call fcn.004ab0b0
mov ebx, eax
and ebx, ebx
jle 0x420720
mov edx, dword [0x15e7a38]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
lea eax, [0x15e7a08]
push eax
call fcn.004ad400
jmp 0x420740
mov edx, dword [0x15e78bc]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
lea eax, [0x15e7a08]
push eax
call fcn.004ad400
mov dword [0x15e7964], 1
jmp 0x420861
push edx
call fcn.004ad3c0
pop edx
push eax
mov edx, dword [0x15e7a70]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
mov edx, 0x540808
push edx
call fcn.004ad490
call fcn.00453382
add dword [esp], edx
call fcn.00499903
call fcn.004533a0
push edx
push eax
pop ebx
pop edi
cmp ebx, 0xfffffffe
jne 0x420796
cmp edi, 0xffffffff
je 0x42079a
xor eax, eax
jmp 0x42079f
mov eax, 1
or eax, eax
je 0x420827
mov edx, dword [0x15e7a70]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
mov edx, 0x5424de
push edx
call fcn.004ad490
lea eax, [0x15e78bc]
push eax
call fcn.004ad400
mov edx, dword [0x15e7a70]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
mov edx, 0x5424de
push edx
call fcn.004ad490
lea eax, [esp + 4]
push eax
call fcn.004ad400
mov dword [0x15e7964], 1
mov edx, dword [0x15e7a38]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
lea eax, [0x15e7a08]
push eax
call fcn.004ad400
jmp 0x420861
mov edx, dword [0x15e7a38]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
lea eax, [0x15e7a08]
push eax
call fcn.004ad400
mov dword [0x15e7964], 0
mov edx, 0x5370c4
lea ecx, [0x15e78bc]
call fcn.00453008
mov ebx, dword [0x15e7964]
and ebx, ebx
jle 0x420928
mov edx, dword [0x15e7904]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
lea eax, [0x15e77d4]
push eax
call fcn.004ad400
mov dword [esp + 4], 0
jmp 0x420899
push dword [0x15e7b30]
call fcn.004a3fb7
cmp eax, dword [esp + 4]
jl 0x4208d9
mov edx, dword [0x15e7b34]
imul edx, dword [esp + 4]
mov ebp, edx
push ebp
xor eax, eax
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [0x15e7b30]
mov edx, 0x5387f4
lea ecx, [ebp]
call fcn.00453008
inc dword [esp + 4]
jno 0x420899
mov dword [esp + 4], 0
jmp 0x4208e3
push dword [0x15e7b24]
call fcn.004a3fb7
cmp eax, dword [esp + 4]
jl 0x420923
mov edx, dword [0x15e7b28]
imul edx, dword [esp + 4]
mov ebp, edx
push ebp
xor eax, eax
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [0x15e7b24]
mov edx, 0x5387f4
lea ecx, [ebp]
call fcn.00453008
inc dword [esp + 4]
jno 0x4208e3
jmp 0x4209dc
mov edx, dword [0x15e7904]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
lea eax, [0x15e77d4]
push eax
call fcn.004ad400
mov dword [esp + 4], 0
jmp 0x420952
push dword [0x15e7b30]
call fcn.004a3fb7
cmp eax, dword [esp + 4]
jl 0x420992
mov edx, dword [0x15e7b34]
imul edx, dword [esp + 4]
mov ebp, edx
push ebp
xor eax, eax
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [0x15e7b30]
mov edx, 0x5387f8
lea ecx, [ebp]
call fcn.00453008
inc dword [esp + 4]
jno 0x420952
mov dword [esp + 4], 0
jmp 0x42099c
push dword [0x15e7b24]
call fcn.004a3fb7
cmp eax, dword [esp + 4]
jl 0x4209dc
mov edx, dword [0x15e7b28]
imul edx, dword [esp + 4]
mov ebp, edx
push ebp
xor eax, eax
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [0x15e7b24]
mov edx, 0x5387f8
lea ecx, [ebp]
call fcn.00453008
inc dword [esp + 4]
jno 0x42099c
mov ebx, dword [0x15e7964]
and ebx, ebx
jle 0x420b16
push edx
call fcn.004ad3c0
pop edx
push eax
mov eax, 0x548ce6
push eax
mov edx, dword [0x15e78bc]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
mov edx, 0x540028
push edx
call fcn.004ad490
call fcn.004ad4f0
push 0
call fcn.00453382
add dword [esp + 4], edx
call fcn.00499fd2
call fcn.004533a0
and eax, eax
je 0x420aea
push 0
call fcn.0049a131
and eax, eax
je 0x420ae0
push 0
call fcn.00499fae
mov ebx, eax
cmp ebx, 1
jne 0x420adb
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad3c0
pop edx
push eax
push 0
call fcn.00499f32
call fcn.00453382
add dword [esp], edx
call fcn.004221e8
lea eax, [esp + 0xc]
push eax
call fcn.004ad400
push dword [esp + 8]
mov edx, 0x5370c4
pop ecx
call fcn.00453330
jne 0x420adb
push edx
call fcn.004ad3c0
pop edx
push eax
mov edx, 0x537408
push edx
call fcn.004ad490
mov edx, dword [esp + 0xc]
push edx
call fcn.004ad490
mov edx, 0x53832a
push edx
call fcn.004ad490
lea eax, [esp + 0x10]
push eax
call fcn.004ad400
jmp 0x420a3c
push 0
call fcn.0049a0ff
mov edx, dword [0x15e7918]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
mov edx, dword [esp + 0x10]
push edx
call fcn.004ad490
lea eax, [0x15e7a0c]
push eax
call fcn.004ad400
jmp 0x420b36
mov edx, dword [0x15e7818]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
lea eax, [0x15e7a0c]
push eax
call fcn.004ad400
mov ebx, dword [0x15e78cc]
and ebx, ebx
jne 0x420b51
mov ebx, dword [0x15e78d0]
and ebx, ebx
jne 0x420b51
mov eax, 1
jmp 0x420b53
xor eax, eax
and eax, eax
je 0x420ba4
call fcn.0049c784
push 0
call fcn.0049c94e
mov ebx, eax
mov eax, ebx
mov ecx, 2
cdq
idiv ecx
mov ebx, eax
add ebx, 0xfffffebe
mov dword [0x15e78cc], ebx
push 0
call fcn.0049c971
mov ebx, eax
mov eax, ebx
mov ecx, 2
cdq
idiv ecx
mov ebx, eax
add ebx, 0xffffff2b
mov dword [0x15e78d0], ebx
push 0
call fcn.00497eef
and eax, eax
je 0x420bb6
xor eax, eax
jmp 0x420bbb
mov eax, 1
and eax, eax
je 0x42106f
push 0x1aa
push 0x284
push dword [0x15e78d0]
push dword [0x15e78cc]
call fcn.00446421
push dword [0x15e7a60]
call fcn.004a6596
push eax
push 1
push 8
call fcn.0048fb61
push dword [0x15e7750]
call fcn.004a6596
push eax
push 1
push 0xa
call fcn.0048fb61
push dword [0x15e78f8]
call fcn.004a6596
push eax
push 1
push 9
call fcn.0048fb61
push dword [0x15e7810]
call fcn.004a6596
push eax
push 1
push 0xb
call fcn.0048fb61
push 0
lea eax, [0x4154f4]
push eax
call fcn.004989cd
push 0x7d0
push 0x309
push 0
call fcn.00498a33
push 1
push 0x3c
call fcn.0048fa71
push 1
push 0x3d
call fcn.0048fa71
push 0
push 0x41
call fcn.0048fa71
push dword [0x15e7958]
mov edx, 0x53ae10
pop ecx
call fcn.00453330
je 0x420d0d
mov eax, 0x540460
push eax
push 0x4c
call fcn.00491b7c
mov eax, 0x549f70
push eax
push 0x4c
call fcn.004928d9
mov eax, 0x53efee
push eax
push 0xd
call fcn.004928d9
mov ebx, dword [0x15e7964]
and ebx, ebx
jne 0x420cfb
push dword [0x15e77e0]
push 0x51
call fcn.004928d9
jmp 0x420d0b
push dword [0x15e7a1c]
push 0x51
call fcn.004928d9
jmp 0x420d1d
mov eax, 0x53b57a
push eax
push 0x4c
call fcn.004928d9
push dword [0x15e7744]
push 0xd
call fcn.00491b7c
push dword [0x15e7890]
push 0x35
call fcn.004928d9
push dword [0x15e7904]
push 0
call fcn.00497ec6
call fcn.0043ce8b
push 1
push 0x4f
call fcn.0048faaf
push 0x4d
call fcn.004439b0
push 0
push 0x4d
call fcn.0048faaf
push dword [0x15e772c]
push 0xffffffff
push 0x4e
call fcn.00491ab3
push dword [0x15e780c]
push 0xffffffff
push 0x4e
call fcn.00491ab3
push dword [0x15e7760]
push 0xffffffff
push 0x4e
call fcn.00491ab3
push 1
push 0x4e
call fcn.0048faaf
push 1
mov eax, 0x538f78
push eax
call fcn.0044281d
mov eax, 0x547a8c
push eax
push 0xffffffff
push 0x45
call fcn.00491ab3
mov eax, 0x544a24
push eax
push 0xffffffff
push 0x45
call fcn.00491ab3
mov eax, 0x54ac0e
push eax
push 0xffffffff
push 0x45
call fcn.00491ab3
push 0
push 0x45
call fcn.0048faaf
push dword [0x15e7860]
push 0xffffffff
push 0x48
call fcn.00491ab3
push dword [0x15e778c]
push 0xffffffff
push 0x48
call fcn.00491ab3
push 0
push 0x48
call fcn.0048faaf
mov edx, 0x538f78
lea ecx, [0x15e7778]
call fcn.00453008
push dword [0x15e788c]
push 0xffffffff
push 0x3f
call fcn.00491ab3
push 0x3f
call fcn.004439b0
push dword [0x15e7820]
push 0xffffffff
push 0x3f
call fcn.00491ab3
push 1
push 0x3f
call fcn.0048faaf
call fcn.0044bf7b
push 0x47
call fcn.00491a65
mov dword [esp + 4], 0
jmp 0x420ecb
push dword [0x15e7b30]
call fcn.004a3fb7
cmp eax, dword [esp + 4]
jl 0x420f13
mov edx, dword [0x15e7b34]
imul edx, dword [esp + 4]
mov ebp, edx
push ebp
mov eax, 1
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [0x15e7b30]
push dword [ebp]
push 0xffffffff
push 0x47
call fcn.00491ab3
inc dword [esp + 4]
jno 0x420ecb
push 2
push 0
push 0x47
call fcn.0048fc36
push 0x5a
call fcn.00491a65
call fcn.004442db
push 0x260
push 0x2bc
push 0
push 0
call fcn.00411cb2
push dword [0x15e79b8]
lea eax, [0x41615f]
push eax
call fcn.004989cd
push dword [0x15e79ec]
call fcn.004a6596
push eax
push 0
push 0x4d
call fcn.00492a86
push dword [0x15e79ec]
call fcn.004a6596
push eax
push 1
push 0x4d
call fcn.00492a86
push dword [0x15e79ec]
call fcn.004a6596
push eax
push 2
push 0x4d
call fcn.00492a86
push dword [0x15e79ec]
call fcn.004a6596
push eax
push 3
push 0x4d
call fcn.00492a86
push dword [0x15e79ec]
call fcn.004a6596
push eax
push 4
push 0x4d
call fcn.00492a86
push dword [0x15e79ec]
call fcn.004a6596
push eax
push 5
push 0x4d
call fcn.00492a86
push dword [0x15e79ec]
call fcn.004a6596
push eax
push 6
push 0x4d
call fcn.00492a86
push dword [0x15e79ec]
call fcn.004a6596
push eax
push 7
push 0x4d
call fcn.00492a86
push dword [0x15e79ec]
call fcn.004a6596
push eax
push 8
push 0x4d
call fcn.00492a86
push dword [0x15e79ec]
call fcn.004a6596
push eax
push 9
push 0x4d
call fcn.00492a86
call fcn.00497c3b
mov ebx, eax
cmp ebx, 0x6e
jl 0x42108c
push 0
push 0x4c
call fcn.00491a88
jmp 0x42109b
push 1
push 0x4c
call fcn.00491a88
push edx
call fcn.004ad3c0
pop edx
push eax
mov edx, dword [0x15e776c]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
mov edx, 0x5506ce
push edx
call fcn.004ad490
call fcn.00453382
add dword [esp], edx
call fcn.00499903
call fcn.004533a0
push edx
push eax
pop ebx
pop edi
cmp ebx, 0x4800
jne 0x4210e5
cmp edi, 0
je 0x4210e9
xor eax, eax
jmp 0x4210ee
mov eax, 1
or eax, eax
je 0x421112
push 0
push 0x42
call fcn.0048faaf
push 1
push 0x36
call fcn.0048faaf
jmp 0x421121
push 1
push 0x42
call fcn.0048faaf
mov ebx, dword [0x15e7964]
and ebx, ebx
jle 0x421c43
push 0
push 0x40
push 0
call fcn.004a439e
push eax
push 1
push 0x59
call fcn.004919cb
push edx
call fcn.004ad3c0
pop edx
push eax
mov eax, 0x548ce6
push eax
mov edx, dword [esp + 8]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
mov edx, 0x540028
push edx
call fcn.004ad490
call fcn.004ad4f0
push 0
call fcn.00453382
add dword [esp + 4], edx
call fcn.00499fd2
call fcn.004533a0
and eax, eax
je 0x42183a
push 0
call fcn.0049a131
and eax, eax
je 0x421830
push 0
call fcn.00499fae
mov ebx, eax
cmp ebx, 2
jne 0x42182b
push edx
call fcn.004ad3c0
pop edx
push eax
mov eax, 0x53f114
push eax
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad3c0
pop edx
push eax
push 0
call fcn.00499f32
call fcn.00453382
add dword [esp], edx
call fcn.004ab0b0
call fcn.004533a0
mov ebx, eax
and ebx, ebx
jg 0x42124c
push edx
call fcn.004ad3c0
pop edx
push eax
mov eax, 0x53d580
push eax
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad3c0
pop edx
push eax
push 0
call fcn.00499f32
call fcn.00453382
add dword [esp], edx
call fcn.004ab0b0
call fcn.004533a0
mov ebx, eax
and ebx, ebx
jg 0x42124c
jmp 0x421253
mov eax, 1
jmp 0x421255
xor eax, eax
and eax, eax
je 0x42182b
push edx
call fcn.004ad3c0
pop edx
push eax
mov eax, 0x53f114
push eax
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad3c0
pop edx
push eax
push 0
call fcn.00499f32
call fcn.00453382
add dword [esp], edx
call fcn.004ab0b0
call fcn.004533a0
mov ebx, eax
and ebx, ebx
jle 0x421345
push 1
push 0x4e
call fcn.0048faaf
mov edx, 0x538f78
lea ecx, [0x15e7778]
call fcn.00453008
push dword [0x15e7904]
push 0
call fcn.00497ec6
push 0x47
call fcn.00491a65
mov dword [esp + 4], 0
jmp 0x4212e4
push dword [0x15e7b30]
call fcn.004a3fb7
cmp eax, dword [esp + 4]
jl 0x42132c
mov edx, dword [0x15e7b34]
imul edx, dword [esp + 4]
mov ebp, edx
push ebp
mov eax, 1
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [0x15e7b30]
push dword [ebp]
push 0xffffffff
push 0x47
call fcn.00491ab3
inc dword [esp + 4]
jno 0x4212e4
push 2
push 0
push 0x47
call fcn.0048fc36
jmp 0x4213e4
push 0
push 0x4e
call fcn.0048faaf
mov edx, 0x538f46
lea ecx, [0x15e7778]
call fcn.00453008
push dword [0x15e7904]
push 0
call fcn.00497ec6
push 0x47
call fcn.00491a65
mov dword [esp + 4], 0
jmp 0x421388
push dword [0x15e7b24]
call fcn.004a3fb7
cmp eax, dword [esp + 4]
jl 0x4213d0
mov edx, dword [0x15e7b28]
imul edx, dword [esp + 4]
mov ebp, edx
push ebp
mov eax, 1
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [0x15e7b24]
push dword [ebp]
push 0xffffffff
push 0x47
call fcn.00491ab3
inc dword [esp + 4]
jno 0x421388
push 2
push 0
push 0x47
call fcn.0048fc36
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad3c0
pop edx
push eax
push 0
call fcn.00499f32
lea eax, [esp + 0x14]
push eax
call fcn.004ad400
push edx
call fcn.004ad3c0
pop edx
push eax
mov edx, dword [esp + 4]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
mov edx, 0x541d22
push edx
call fcn.004ad490
mov edx, dword [esp + 0x18]
push edx
call fcn.004ad490
mov edx, 0x5433b8
push edx
call fcn.004ad490
call fcn.00453382
add dword [esp], edx
call fcn.00499903
call fcn.004533a0
push edx
push eax
pop ebx
pop edi
cmp edi, 0
jg 0x421468
jl 0x421464
cmp ebx, 0
ja 0x421468
xor eax, eax
jmp 0x42146d
mov eax, 1
or eax, eax
je 0x4214e1
push edx
call fcn.004ad3c0
pop edx
push eax
mov edx, dword [esp + 4]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
mov edx, 0x541d22
push edx
call fcn.004ad490
mov edx, dword [esp + 0x18]
push edx
call fcn.004ad490
mov edx, 0x53fabe
push edx
call fcn.004ad490
call fcn.00453382
add dword [esp], edx
call fcn.00499903
call fcn.004533a0
push edx
push eax
pop ebx
pop edi
cmp edi, 0
jg 0x4214d1
jl 0x4214cd
cmp ebx, 0
ja 0x4214d1
xor eax, eax
jmp 0x4214d6
mov eax, 1
or eax, eax
je 0x4214e1
mov eax, 1
jmp 0x4214e3
xor eax, eax
and eax, eax
je 0x4214f6
mov dword [0x15e7a44], 0
jmp 0x4215ea
push edx
call fcn.004ad3c0
pop edx
push eax
mov edx, dword [esp + 4]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
mov edx, 0x541d22
push edx
call fcn.004ad490
mov edx, dword [esp + 0x18]
push edx
call fcn.004ad490
mov edx, 0x5433b8
push edx
call fcn.004ad490
call fcn.00453382
add dword [esp], edx
call fcn.00499903
call fcn.004533a0
push edx
push eax
pop ebx
pop edi
cmp edi, 0
jl 0x421556
jg 0x421552
cmp ebx, 0x64
jb 0x421556
xor eax, eax
jmp 0x42155b
mov eax, 1
or eax, eax
je 0x42156b
mov dword [0x15e7a44], 0x56
jmp 0x4215ea
push edx
call fcn.004ad3c0
pop edx
push eax
mov edx, dword [esp + 4]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
mov edx, 0x541d22
push edx
call fcn.004ad490
mov edx, dword [esp + 0x18]
push edx
call fcn.004ad490
mov edx, 0x53fabe
push edx
call fcn.004ad490
call fcn.00453382
add dword [esp], edx
call fcn.00499903
call fcn.004533a0
push edx
push eax
pop ebx
pop edi
cmp edi, 0
jl 0x4215cb
jg 0x4215c7
cmp ebx, 0x64
jb 0x4215cb
xor eax, eax
jmp 0x4215d0
mov eax, 1
or eax, eax
je 0x4215e0
mov dword [0x15e7a44], 0x40
jmp 0x4215ea
mov dword [0x15e7a44], 0
push edx
call fcn.004ad3c0
pop edx
push eax
mov eax, 0x548ce6
push eax
mov edx, dword [esp + 8]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
mov edx, 0x541d22
push edx
call fcn.004ad490
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad3c0
pop edx
push eax
push 0
call fcn.00499f32
pop eax
call fcn.004ad4f0
push 1
call fcn.00453382
add dword [esp + 4], edx
call fcn.00499fd2
call fcn.004533a0
and eax, eax
je 0x42182b
push 1
call fcn.0049a131
and eax, eax
je 0x421821
push 1
call fcn.00499fae
mov ebx, eax
cmp ebx, 1
jne 0x42181c
push dword [0x15e7778]
mov edx, 0x538f78
pop ecx
call fcn.00453330
je 0x42175a
mov dword [esp + 4], 0
jmp 0x42169d
push dword [0x15e7b30]
call fcn.004a3fb7
cmp eax, dword [esp + 4]
jl 0x421755
push edx
call fcn.004ad3c0
pop edx
push eax
push 1
push 1
mov edx, dword [0x15e7b34]
imul edx, dword [esp + 0x10]
mov ebp, edx
push ebp
mov eax, 1
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [0x15e7b30]
push dword [ebp]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad3c0
pop edx
push eax
push 1
call fcn.00499f32
call fcn.00453382
add dword [esp], edx
call fcn.004ab010
call fcn.004533a0
mov ebx, eax
and ebx, ebx
jle 0x42174b
mov edx, dword [0x15e7b34]
imul edx, dword [esp + 4]
mov ebp, edx
push ebp
xor eax, eax
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [0x15e7b30]
mov edx, 0x5387f8
lea ecx, [ebp]
call fcn.00453008
mov dword [0x15e78f4], 1
inc dword [esp + 4]
jno 0x42169d
jmp 0x42181c
mov dword [esp + 4], 0
jmp 0x421764
push dword [0x15e7b24]
call fcn.004a3fb7
cmp eax, dword [esp + 4]
jl 0x42181c
push edx
call fcn.004ad3c0
pop edx
push eax
push 1
push 1
mov edx, dword [0x15e7b28]
imul edx, dword [esp + 0x10]
mov ebp, edx
push ebp
mov eax, 1
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [0x15e7b24]
push dword [ebp]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad3c0
pop edx
push eax
push 1
call fcn.00499f32
call fcn.00453382
add dword [esp], edx
call fcn.004ab010
call fcn.004533a0
mov ebx, eax
and ebx, ebx
jle 0x421812
mov edx, dword [0x15e7b28]
imul edx, dword [esp + 4]
mov ebp, edx
push ebp
xor eax, eax
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [0x15e7b24]
mov edx, 0x5387f8
lea ecx, [ebp]
call fcn.00453008
mov dword [0x15e78f4], 1
inc dword [esp + 4]
jno 0x421764
jmp 0x421655
push 1
call fcn.0049a0ff
jmp 0x4211a3
push 0
call fcn.0049a0ff
mov ebx, dword [0x15e78f4]
and ebx, ebx
jne 0x421b10
push edx
call fcn.004ad3c0
pop edx
push eax
mov eax, 0x548ce6
push eax
mov edx, dword [esp + 8]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
mov edx, 0x540028
push edx
call fcn.004ad490
call fcn.004ad4f0
push 0
call fcn.00453382
add dword [esp + 4], edx
call fcn.00499fd2
call fcn.004533a0
and eax, eax
je 0x421adb
push 0
call fcn.0049a131
and eax, eax
je 0x421ad1
push 0
call fcn.00499fae
mov ebx, eax
cmp ebx, 2
jne 0x421acc
push edx
call fcn.004ad3c0
pop edx
push eax
mov eax, 0x53f114
push eax
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad3c0
pop edx
push eax
push 0
call fcn.00499f32
call fcn.00453382
add dword [esp], edx
call fcn.004ab0b0
call fcn.004533a0
mov ebx, eax
and ebx, ebx
jle 0x421acc
push edx
call fcn.004ad3c0
pop edx
push eax
mov eax, 0x548ce6
push eax
mov edx, dword [esp + 8]
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad490
mov edx, 0x541d22
push edx
call fcn.004ad490
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad3c0
pop edx
push eax
push 0
call fcn.00499f32
pop eax
call fcn.004ad4f0
push 1
call fcn.00453382
add dword [esp + 4], edx
call fcn.00499fd2
call fcn.004533a0
and eax, eax
je 0x421acc
push 1
call fcn.0049a131
and eax, eax
je 0x421ac2
push 1
call fcn.00499fae
mov ebx, eax
cmp ebx, 1
jne 0x421abd
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad3c0
pop edx
push eax
push 1
call fcn.00499f32
lea eax, [esp + 0x18]
push eax
call fcn.004ad400
push 1
mov eax, 0x54c356
push eax
push dword [esp + 0x1c]
call fcn.004aaff0
mov ebx, eax
and ebx, ebx
jg 0x4219ef
push 1
mov eax, 0x54fa98
push eax
push dword [esp + 0x1c]
call fcn.004aaff0
mov ebx, eax
and ebx, ebx
jg 0x4219ef
jmp 0x4219f6
mov eax, 1
jmp 0x4219f8
xor eax, eax
and eax, eax
je 0x421a01
jmp 0x421abd
push 1
mov eax, 0x54adcc
push eax
push dword [esp + 0x1c]
call fcn.004aaff0
mov ebx, eax
and ebx, ebx
jg 0x421a37
push 1
mov eax, 0x54737e
push eax
push dword [esp + 0x1c]
call fcn.004aaff0
mov ebx, eax
and ebx, ebx
jg 0x421a37
jmp 0x421a3e
mov eax, 1
jmp 0x421a40
xor eax, eax
and eax, eax
je 0x421abd
push 1
mov eax, 0x53e4dc
push eax
push dword [esp + 0x1c]
call fcn.004aaff0
mov dword [esp + 0x18], eax
mov ebx, dword [esp + 0x18]
and ebx, ebx
jle 0x421a9d
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad3c0
pop edx
push eax
push dword [esp + 0x1c]
call fcn.004aafc0
mov ebx, eax
add ebx, 0xfffffff1
push ebx
push 0xc
push dword [esp + 0x24]
call fcn.004ab0d0
lea eax, [0x15e7828]
push eax
call fcn.004ad400
push 1
call fcn.0049a0ff
push 0
call fcn.0049a0ff
mov dword [0x15e78f4], 1
jmp 0x421adb
jmp 0x42196e
push 1
call fcn.0049a0ff
jmp 0x421898
push 0
call fcn.0049a0ff
mov dword [esp + 0x1c], 0x10
push dword [0x15e7828]
mov edx, 0x5370c4
pop ecx
call fcn.00453330
jne 0x421b0b
push dword [0x15e7828]
push 0xffffffff
push 0x5a
call fcn.00491ab3
jmp 0x421c2f
push 0x5a
call fcn.00491a65
push dword [0x15e7778]
mov edx, 0x538f78
pop ecx
call fcn.00453330
je 0x421bb1
mov dword [esp + 4], 0
jmp 0x421b3b
push dword [0x15e7b30]
call fcn.004a3fb7
cmp eax, dword [esp + 4]
jl 0x421baf
mov edx, dword [0x15e7b34]
imul edx, dword [esp + 4]
mov ebp, edx
push ebp
xor eax, eax
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [0x15e7b30]
push dword [ebp]
mov edx, 0x5387f8
pop ecx
call fcn.00453330
je 0x421ba9
mov edx, dword [0x15e7b34]
imul edx, dword [esp + 4]
mov ebp, edx
push ebp
mov eax, 1
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [0x15e7b30]
push dword [ebp]
push 0xffffffff
push 0x5a
call fcn.00491ab3
inc dword [esp + 4]
jno 0x421b3b
jmp 0x421c2f
mov dword [esp + 4], 0
jmp 0x421bbb
push dword [0x15e7b24]
call fcn.004a3fb7
cmp eax, dword [esp + 4]
jl 0x421c2f
mov edx, dword [0x15e7b28]
imul edx, dword [esp + 4]
mov ebp, edx
push ebp
xor eax, eax
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [0x15e7b24]
push dword [ebp]
mov edx, 0x5387f8
pop ecx
call fcn.00453330
je 0x421c29
mov edx, dword [0x15e7b28]
imul edx, dword [esp + 4]
mov ebp, edx
push ebp
mov eax, 1
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [0x15e7b24]
push dword [ebp]
push 0xffffffff
push 0x5a
call fcn.00491ab3
inc dword [esp + 4]
jno 0x421bbb
push 0
push 0x26
call fcn.0048faaf
jmp 0x421d34
mov dword [0x15e7a44], 0
push 0
push 0
push pe_nt_image_headers32
call fcn.004a439e
push eax
push 1
push 0x59
call fcn.004919cb
push 0x5a
call fcn.00491a65
push dword [0x15e7778]
mov edx, 0x538f78
pop ecx
call fcn.00453330
je 0x421ce2
mov dword [esp + 4], 0
jmp 0x421c98
push dword [0x15e7b30]
call fcn.004a3fb7
cmp eax, dword [esp + 4]
jl 0x421ce0
mov edx, dword [0x15e7b34]
imul edx, dword [esp + 4]
mov ebp, edx
push ebp
mov eax, 1
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [0x15e7b30]
push dword [ebp]
push 0xffffffff
push 0x5a
call fcn.00491ab3
inc dword [esp + 4]
jno 0x421c98
jmp 0x421d34
mov dword [esp + 4], 0
jmp 0x421cec
push dword [0x15e7b24]
call fcn.004a3fb7
cmp eax, dword [esp + 4]
jl 0x421d34
mov edx, dword [0x15e7b28]
imul edx, dword [esp + 4]
mov ebp, edx
push ebp
mov eax, 1
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [0x15e7b24]
push dword [ebp]
push 0xffffffff
push 0x5a
call fcn.00491ab3
inc dword [esp + 4]
jno 0x421cec
mov ebx, dword [0x15e7a44]
cmp ebx, 0x56
jne 0x421d50
push 1
push 0x4f
call fcn.0048faaf
jmp 0x421d76
mov ebx, dword [0x15e7a44]
cmp ebx, 0x40
jne 0x421d6c
push 1
push 0x50
call fcn.0048faaf
jmp 0x421d76
mov dword [0x15e7a44], 0
mov ebx, dword [0x15e7964]
and ebx, ebx
jle 0x421da0
push 0
call fcn.00497eef
and eax, eax
je 0x421d9e
push dword [0x15e7784]
push 0x51
call fcn.00491b7c
jmp 0x421dbe
push 0
call fcn.00497eef
and eax, eax
je 0x421dbe
push dword [0x15e7a38]
push 0x51
call fcn.00491b7c
push dword [0x15e78bc]
mov edx, 0x5370c4
pop ecx
call fcn.00453330
jne 0x421eea
push dword [0x15e78bc]
call fcn.004aafc0
mov ebx, eax
cmp ebx, 0x1e
jle 0x421e85
mov dword [esp + 0x20], 1
jmp 0x421df5
mov eax, 0x53994a
push eax
push dword [0x15e78bc]
call fcn.004ab860
cmp eax, dword [esp + 0x20]
jl 0x421e41
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad3c0
pop edx
push eax
mov eax, 0x53994a
push eax
push dword [esp + 0x2c]
push dword [0x15e78bc]
call fcn.004ab990
lea eax, [esp + 0x28]
push eax
call fcn.004ad400
inc dword [esp + 0x20]
jno 0x421df5
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad3c0
pop edx
push eax
mov edx, 0x54402c
push edx
call fcn.004ad490
mov edx, dword [esp + 0x2c]
push edx
call fcn.004ad490
call fcn.004ad4f0
push 0x55
call fcn.00453382
add dword [esp + 4], edx
call fcn.00491b7c
call fcn.004533a0
jmp 0x421ee8
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad3c0
pop edx
push eax
mov edx, 0x5522d8
push edx
call fcn.004ad490
push edx
call fcn.004ad3c0
pop edx
push eax
push edx
call fcn.004ad3c0
pop edx
push eax
push dword [0x15e78bc]
call fcn.004aafc0
mov ebx, eax
dec ebx
push ebx
push dword [0x15e78bc]
call fcn.004ab8f0
pop eax
call fcn.004ad4f0
push 0x55
call fcn.00453382
add dword [esp + 4], edx
call fcn.00491b7c
call fcn.004533a0
jmp 0x421efa
mov eax, 0x5370c4
push eax
push 0x55
call fcn.00491b7c
xor eax, eax
push dword [esp]
call fcn.004ad5c0
push dword [esp + 0xc]
call fcn.004ad5c0
push dword [esp + 8]
call fcn.004ad5c0
push dword [esp + 0x10]
call fcn.004ad5c0
push dword [esp + 0x14]
call fcn.004ad5c0
push dword [esp + 0x24]
call fcn.004ad5c0
add esp, 0x28
pop edi
pop ebx
pop ebp
ret 4