Function at 0x142fbfa
Capabilities:
Parse pe header

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x2c
mov eax, dword [0x41f0cc]
mov ebp, dword [esp + 0x44]
mov esi, dword [esp + 0x40]
mov dword [esp + 0x28], eax
xor eax, eax
push eax
xor ebx, ebx
push 0x2b
push ebp
call fcn.01426e31
mov edi, 0x40214f
mov dword [esp + 8], edi
mov dword [esp], ebp
mov dword [esp + 4], 0x14
call fcn.01426f89
add esp, 0xc
push edi
push 0x15
push ebp
call fcn.01426f89
add esp, 0xc
push edi
push 0x2e
push ebp
call fcn.01426f89
add esp, 0xc
mov edx, 0x404f24
mov ecx, esi
push edi
call fcn.014313ad
add esp, 4
mov edi, eax
push edi
push ebx
xor ebx, ebx
push ebp
call fcn.01426f89
add esp, 0xc
push edi
call fcn.014287a8
add esp, 4
mov edx, 0x404f2d
mov ecx, esi
push 0x77
push ebp
call fcn.01431333
add esp, 8
mov edx, 0x404f39
mov ecx, esi
push 0x78
push ebp
push ebx
xor edi, edi
call fcn.01431375
add esp, 0xc
mov edx, 0x404f41
mov ecx, esi
push 0x79
push ebp
push 0xffffffffffffffff
call fcn.01431375
add esp, 0xc
xor ebx, ebx
mov edx, 0x404f4e
mov ecx, esi
inc ebx
push 0x7a
push ebp
push ebx
call fcn.01431375
add esp, 0xc
mov edx, 0x404f57
mov ecx, esi
push 0x7b
push ebp
push ebx
call fcn.01431375
add esp, 0xc
mov edx, 0x404f6b
mov ecx, esi
push 0x7c
push ebp
push edi
call fcn.01431375
add esp, 0xc
mov edx, 0x404f7a
mov ecx, esi
push 0x4057da
call fcn.014313ad
add esp, 4
mov edi, eax
push dword [0x41d10c]
push 2
push ebp
call fcn.01426e31
add esp, 0xc
push dword [0x41d140]
push ebx
push ebp
call fcn.01426e31
add esp, 0xc
push edi
call fcn.0142fb4c
add esp, 4
test eax, eax
je 0x142fd5c
push dword [eax + 0x48]
push 2
push ebp
call fcn.01426e31
add esp, 0xc
mov edx, 0x404f83
mov ecx, esi
push 1
push ebp
push dword [0x41d140]
call fcn.01431375
add esp, 0xc
push edi
call fcn.014287a8
add esp, 4
mov edx, 0x405006
mov ecx, esi
push 3
push ebp
xor eax, eax
push eax
call fcn.01431375
add esp, 0xc
xor eax, eax
mov edi, 0x404f8e
inc eax
push eax
mov ebx, eax
push edi
call fcn.0145ee45
add esp, 8
push eax
push edi
push esi
call fcn.0146517c
add esp, 0xc
mov ecx, eax
mov edx, 0x55555556
lea eax, [ecx + 1]
imul edx
mov eax, edx
shr eax, 0x1f
add eax, edx
lea eax, [eax + eax*2]
neg eax
lea eax, [ecx + eax + 1]
push eax
push 4
push ebp
call fcn.01426e31
add esp, 0xc
mov edx, 0x404f9a
mov ecx, esi
push 5
push ebp
push ebx
call fcn.01431375
add esp, 0xc
xor eax, eax
mov edi, 0x404fa6
push eax
push edi
call fcn.0145ee45
add esp, 8
push eax
push edi
push esi
call fcn.0146517c
add esp, 0xc
mov edi, eax
xor eax, eax
mov ebx, 0x404fb3
push eax
push ebx
call fcn.0145ee45
add esp, 8
push eax
push ebx
push esi
call fcn.0146517c
add esp, 0xc
imul ecx, edi, 0x3c
add ecx, eax
push ecx
push 6
push ebp
call fcn.01426e31
add esp, 0xc
mov edx, 0x404fc4
mov ecx, esi
push 7
push ebp
xor eax, eax
inc eax
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x404fcf
mov ecx, esi
push 8
push ebp
xor eax, eax
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x404fdd
mov ecx, esi
push 0x4057e2
call fcn.014313ad
add esp, 4
mov edi, eax
push edi
push 0x30
push ebp
call fcn.01426f89
add esp, 0xc
push edi
call fcn.014287a8
add esp, 4
mov edx, 0x404fea
mov ecx, esi
push 0x4057e8
call fcn.014313ad
add esp, 4
mov edi, eax
push edi
push 0x31
push ebp
call fcn.01426f89
add esp, 0xc
push edi
call fcn.014287a8
add esp, 4
mov edx, 0x404ff8
mov ecx, esi
push 0x32
push ebp
call fcn.014313e2
add esp, 8
mov esi, 0xffffff28
test eax, eax
je 0x142ff02
mov edi, 0x4057f4
mov ebx, dword [esi + 0x404d88]
push ebx
push 0x32
push ebp
call fcn.01426b0e
add esp, 0xc
test eax, eax
jne 0x142fefb
push 0x404c19
push ebx
call fcn.01476954
add esp, 8
test eax, eax
mov ecx, 0x4057f6
cmove ecx, edi
push ecx
push ebx
push 0x32
push ebp
call fcn.01427004
add esp, 0x10
add esi, 4
jne 0x142fec0
jmp 0x142ff1d
push 0x4057f4
push dword [esi + 0x404d88]
push 0x32
push ebp
call fcn.01427004
add esp, 0x10
add esi, 4
jne 0x142ff02
mov ebx, dword [esp + 0x40]
mov edx, 0x405014
mov ecx, ebx
push 0x40214f
call fcn.014313ad
add esp, 4
mov edi, eax
push edi
push 0xa
push ebp
call fcn.01426f89
add esp, 0xc
push edi
call fcn.014287a8
sub esp, 4
mov esi, 0x405025
mov dword [esp], esi
mov dword [esp + 4], 1
call fcn.0145ee45
add esp, 8
push eax
push esi
push ebx
call fcn.0146517c
add esp, 0xc
mov ecx, eax
mov edx, 0x55555556
lea eax, [ecx + 1]
imul edx
mov eax, edx
shr eax, 0x1f
add eax, edx
lea eax, [eax + eax*2]
neg eax
lea eax, [ecx + eax + 1]
push eax
push 0xb
push ebp
call fcn.01426e31
add esp, 0xc
mov edx, 0x40502e
mov ecx, ebx
push 0xc
push ebp
push 0
call fcn.01431375
add esp, 0xc
xor edi, edi
mov esi, 0xd
mov edx, 0x40503d
mov ecx, ebx
dec edi
push esi
push ebp
push edi
call fcn.01431375
add esp, 0xc
push esi
push ebp
call fcn.01426937
add esp, 8
cmp eax, edi
jne 0x1430063
sub esp, 8
mov esi, 0x4057f8
mov dword [esp], esi
mov dword [esp + 4], 0
call fcn.0145ee45
add esp, 8
push eax
push esi
push ebx
call fcn.0146517c
add esp, 0xc
cmp eax, 4
ja 0x1430017
jmp dword [eax*4 + 0x405c58]
mov esi, 5
mov edi, 0x405802
push esi
push edi
call fcn.0145ee45
add esp, 8
push eax
push edi
push dword [esp + 0x48]
call fcn.0146517c
add esp, 0xc
cmp eax, esi
jne 0x1430052
push 2
push 0xd
push ebp
jmp 0x1430057
push 1
push 0xd
push ebp
call fcn.01426e31
add esp, 0xc
mov ebx, dword [esp + 0x40]
mov edx, 0x405049
mov ecx, ebx
push 0x403429
call fcn.014313ad
add esp, 4
mov edi, eax
push edi
push 0xe
push ebp
call fcn.01426f89
add esp, 0xc
push edi
call fcn.014287a8
add esp, 4
mov edx, 0x405053
mov ecx, ebx
push 0xf
push ebp
push 0x50
call fcn.01431375
add esp, 8
mov eax, 0x40214f
mov edx, 0x40505d
mov ecx, ebx
mov esi, 0x40214f
mov dword [esp], eax
call fcn.014313ad
add esp, 4
mov edi, eax
push edi
push 0x10
push ebp
call fcn.01426f89
add esp, 0xc
push edi
call fcn.014287a8
add esp, 4
mov edx, 0x40506b
mov ecx, ebx
push esi
mov esi, 0x40214f
call fcn.014313ad
add esp, 4
mov edi, eax
push edi
push 0x11
push ebp
call fcn.01426f89
add esp, 0xc
push edi
call fcn.014287a8
add esp, 4
mov edx, 0x405079
mov ecx, ebx
push 0x405814
call fcn.014313ad
add esp, 4
mov edi, eax
push edi
push 0x12
push ebp
call fcn.01426f89
add esp, 0xc
push edi
call fcn.014287a8
add esp, 4
mov edx, 0x40508c
mov ecx, ebx
push 0x13
push ebp
xor eax, eax
inc eax
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x40509b
mov ecx, ebx
push 0x33
push ebp
call fcn.014313e2
add esp, 8
mov edx, 0x4050a7
mov ecx, ebx
push esi
call fcn.014313ad
add esp, 4
mov edi, eax
push edi
push 0x34
push ebp
call fcn.01426f89
add esp, 0xc
push edi
call fcn.014287a8
add esp, 4
xor esi, esi
mov edx, 0x4050b0
mov ecx, ebx
push 0x35
push ebp
push esi
call fcn.01431375
add esp, 0xc
mov eax, 0x40214f
mov edx, 0x4050c8
mov ecx, ebx
push eax
call fcn.014313ad
add esp, 4
mov edi, eax
push edi
push 0x36
push ebp
call fcn.01426f89
add esp, 0xc
push edi
call fcn.014287a8
add esp, 4
mov edx, 0x4050d6
mov ecx, ebx
push 0x16
push ebp
push esi
call fcn.01431375
add esp, 0xc
mov edx, 0x4050dc
mov ecx, ebx
push 0x17
push ebp
push esi
call fcn.01431375
add esp, 0xc
mov edx, 0x4050e8
mov ecx, ebx
push 0x1c
push ebp
xor eax, eax
inc eax
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x4050f1
mov ecx, ebx
push 0x1d
push ebp
push esi
call fcn.01431375
add esp, 0xc
mov edx, 0x405104
mov ecx, ebx
push 0x1e
push ebp
push esi
call fcn.01431375
add esp, 0xc
mov edx, 0x4050fa
mov ecx, ebx
push 0x28
push ebp
push esi
call fcn.01431375
add esp, 0xc
mov edx, 0x405113
mov ecx, ebx
push 0x40582a
call fcn.014313ad
add esp, 4
mov edi, eax
mov edx, 0x404d8c
mov ecx, edi
push 0x1f
push ebp
push 7
call fcn.01431502
add esp, 0xc
push edi
call fcn.014287a8
add esp, 4
mov edi, 0x40589e
push esi
push edi
call fcn.0145ee45
add esp, 8
push eax
push edi
push ebx
call fcn.0146517c
add esp, 0xc
cmp eax, 2
mov eax, 0x405865
mov esi, 0x40582c
mov edx, 0x40511a
mov ecx, ebx
cmove esi, eax
push esi
call fcn.014313ad
add esp, 4
mov edi, eax
test edi, edi
jne 0x14302bb
push 0x366
push 0x4058a8
push 0x4058c4
call fcn.01474209
add esp, 0xc
push 0x4058dc
push edi
call fcn.01476954
add esp, 8
test eax, eax
je 0x14302f3
push 0x405910
push edi
call fcn.01476954
add esp, 8
mov esi, dword [esp + 0x40]
test eax, eax
jne 0x1430310
push edi
call fcn.014287a8
add esp, 4
mov eax, 0x40582c
jmp 0x1430305
push edi
call fcn.014287a8
add esp, 4
mov esi, dword [esp + 0x40]
mov eax, 0x405865
push eax
call fcn.01428572
add esp, 4
mov edi, eax
mov ecx, edi
mov edx, 0x404dfc
push 0x18
push ebp
push 6
call fcn.01431502
add esp, 0xc
push edi
call fcn.014287a8
add esp, 4
mov ecx, esi
mov edx, 0x40511e
push 0x405944
call fcn.014313ad
add esp, 4
mov edi, eax
mov edx, 0x404e5c
mov ecx, edi
push 0x19
push ebp
push 5
call fcn.01431502
add esp, 0xc
push edi
call fcn.014287a8
add esp, 4
mov ecx, esi
mov edx, 0x405126
push 0x1a
push ebp
push 0x3c
call fcn.01431375
add esp, 0xc
mov ecx, esi
mov edx, 0x405130
push 0x40595f
call fcn.014313ad
add esp, 4
mov edi, eax
push edi
push 0x1b
push ebp
call fcn.01426f89
add esp, 0xc
push edi
call fcn.014287a8
sub esp, 4
mov edi, 0x405186
mov dword [esp], edi
mov dword [esp + 4], 3
call fcn.0145ee45
add esp, 8
xor ebx, ebx
push eax
push edi
push esi
call fcn.0146517c
add esp, 0xc
cmp eax, 1
mov ecx, 0
je 0x14303dc
cmp eax, 2
jne 0x14303da
mov ecx, 3
jmp 0x14303dc
mov ecx, eax
push ecx
push 0x21
push ebp
call fcn.01426e31
add esp, 8
mov eax, 0x40214f
mov edx, 0x40518e
mov ecx, esi
mov dword [esp], eax
call fcn.014313ad
add esp, 4
mov edi, eax
push edi
push 9
push ebp
call fcn.01426f89
add esp, 0xc
push edi
call fcn.014287a8
add esp, 4
mov edx, 0x405196
mov ecx, esi
push 0x22
push ebp
push ebx
call fcn.01431375
add esp, 0xc
mov edx, 0x40513b
mov ecx, esi
push 0x23
push ebp
push ebx
call fcn.01431375
add esp, 0xc
mov edx, 0x405145
mov ecx, esi
push 0x24
push ebp
xor eax, eax
inc eax
push eax
mov edi, eax
call fcn.01431375
add esp, 0xc
mov edx, 0x40514f
mov ecx, esi
push 0x25
push ebp
push ebx
call fcn.01431375
add esp, 0xc
mov edx, 0x405157
mov ecx, esi
push 0x26
push ebp
push edi
call fcn.01431375
add esp, 0xc
mov edx, 0x40515e
mov ecx, esi
push 0x27
push ebp
push edi
mov ebx, edi
call fcn.01431375
add esp, 0xc
mov edx, 0x405169
mov ecx, esi
push 0x40582a
call fcn.014313ad
add esp, 4
mov edi, eax
mov edx, 0x4132a8
mov ecx, edi
push 0x29
push ebp
push dword [0x413298]
call fcn.01431502
add esp, 0xc
push edi
call fcn.014287a8
add esp, 4
mov edx, 0x405171
mov ecx, esi
push 0x2a
push ebp
call fcn.01431333
add esp, 8
mov edx, 0x40517b
mov ecx, esi
push 0x2d
push ebp
xor eax, eax
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x40519e
mov ecx, esi
push 0x20
push ebp
call fcn.01431333
add esp, 8
mov eax, 0x40214f
mov edx, 0x4051ac
mov ecx, esi
push eax
call fcn.014313ad
add esp, 4
mov edi, eax
push edi
push 0x14
push ebp
call fcn.01426f89
add esp, 0xc
push edi
call fcn.014287a8
add esp, 4
mov edx, 0x4051ba
mov ecx, esi
push 0x37
push ebp
xor eax, eax
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x4051c5
mov ecx, esi
push 0x38
push ebp
xor eax, eax
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x4051d3
mov ecx, esi
push 0x3f
push ebp
push ebx
call fcn.01431375
add esp, 0xc
mov edx, 0x4051e5
mov ecx, esi
push 0x40
push ebp
xor eax, eax
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x4051f1
mov ecx, esi
push 0x41
push ebp
xor eax, eax
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x405203
mov ecx, esi
push 0x43
push ebp
xor eax, eax
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x405215
mov ecx, esi
push 0x42
push ebp
xor eax, eax
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x40522a
mov ecx, esi
push 0x44
push ebp
xor eax, eax
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x40523b
mov ecx, esi
push 0x45
push ebp
xor eax, eax
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x40524a
mov ecx, esi
push 0x46
push ebp
xor eax, eax
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x405256
mov ecx, esi
push 0x47
push ebp
xor eax, eax
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x405267
mov ecx, esi
push 0x48
push ebp
xor eax, eax
push eax
call fcn.01431375
add esp, 0xc
mov edi, 0x405962
push ebx
push edi
call fcn.0145ee45
add esp, 8
push eax
push edi
push esi
call fcn.0146517c
add esp, 0xc
cmp eax, ebx
mov eax, 2
mov edi, 2
mov edx, 0x40527b
mov ecx, esi
adc eax, 0xffffffff
push 0x4b
push ebp
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x40528e
mov ecx, esi
push 0x49
push ebp
xor eax, eax
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x40529b
mov ecx, esi
push 0x4a
push ebp
xor eax, eax
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x4052ab
mov ecx, esi
push 0x4c
push ebp
xor eax, eax
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x4052c1
mov ecx, esi
push 0x4d
push ebp
xor eax, eax
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x4052d3
mov ecx, esi
push 0x4e
push ebp
xor eax, eax
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x4052e1
mov ecx, esi
push 0x51
push ebp
push ebx
call fcn.01431375
add esp, 0xc
mov edx, 0x4052e7
mov ecx, esi
push 0x52
push ebp
xor eax, eax
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x4052f0
mov ecx, esi
push 0x53
push ebp
xor eax, eax
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x4052f8
mov ecx, esi
push 0x5b
push ebp
xor eax, eax
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x405303
mov ecx, esi
push 0x5c
push ebp
push ebx
call fcn.01431375
add esp, 0xc
mov edx, 0x40530f
mov ecx, esi
push 0x4f
push ebp
xor eax, eax
push eax
call fcn.01431375
add esp, 0xc
mov eax, 0x50
mov edx, 0x405319
mov ecx, esi
push eax
push ebp
push ebx
call fcn.01431375
add esp, 0xc
mov edx, 0x405323
mov ecx, esi
push 0x54
push ebp
push edi
call fcn.01431375
add esp, 0xc
mov edx, 0x40532d
mov ecx, esi
push 0x55
push ebp
mov dword [esp + 8], 2
push edi
call fcn.01431375
add esp, 0xc
mov edx, 0x405337
mov ecx, esi
push 0x405971
call fcn.014313ad
add esp, 4
mov edi, eax
push edi
push 0x80
push ebp
call fcn.01426f89
add esp, 0xc
push edi
call fcn.014287a8
add esp, 4
mov edx, 0x405342
mov ecx, esi
push 0x56
push ebp
xor eax, eax
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x40534e
mov ecx, esi
push 0x57
push ebp
xor eax, eax
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x405363
mov ecx, esi
push 0x7d
push ebp
xor eax, eax
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x405370
mov ecx, esi
push 0x7e
push ebp
xor eax, eax
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x40537b
mov ecx, esi
push 0x7f
push ebp
push ebx
call fcn.01431375
add esp, 0xc
mov edx, 0x405388
mov ecx, esi
push 0x64
push ebp
xor eax, eax
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x405390
mov ecx, esi
push 0x65
push ebp
xor eax, eax
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x405399
mov ecx, esi
push 0x66
push ebp
push ebx
call fcn.01431375
add esp, 0xc
mov edx, 0x40539e
mov ecx, esi
push 0x67
push ebp
xor eax, eax
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x4053a6
mov ecx, esi
push 0x6c
push ebp
call fcn.01431333
add esp, 8
mov edx, 0x4053b3
mov ecx, esi
push 0x68
push ebp
push ebx
call fcn.01431375
add esp, 0xc
mov edx, 0x4053c0
mov ecx, esi
push 0x69
push ebp
push 5
call fcn.01431375
add esp, 0xc
mov edi, 0x7d0
mov ebx, 0x4053ce
push edi
push ebx
call fcn.0145ee45
add esp, 8
push eax
push ebx
push esi
call fcn.0146517c
add esp, 0xc
push eax
push 0x6a
push ebp
call fcn.01426e31
add esp, 4
mov ebx, 0x4053dc
mov dword [esp], ebx
mov dword [esp + 4], 0x1388
call fcn.0145ee45
add esp, 8
push eax
push ebx
xor ebx, ebx
push esi
call fcn.0146517c
add esp, 0xc
push eax
push 0x6b
push ebp
call fcn.01426e31
add esp, 0xc
mov edx, 0x4053ea
mov ecx, esi
push 0x60
push ebp
push edi
call fcn.01431375
add esp, 0xc
mov edx, 0x4053fa
mov ecx, esi
push 0x61
push ebp
push ebx
call fcn.01431375
add esp, 0xc
mov edx, 0x405408
mov ecx, esi
push 0x62
push ebp
xor edi, edi
inc edi
push edi
call fcn.01431375
add esp, 0xc
mov edx, 0x405415
mov ecx, esi
push 0x63
push ebp
push ebx
call fcn.01431375
add esp, 0xc
mov edx, 0x405421
mov ecx, esi
push 0xb6
push ebp
push ebx
call fcn.01431375
add esp, 0xc
mov edx, 0x40542d
mov ecx, esi
push 0x82
push ebp
push ebx
call fcn.01431375
add esp, 0xc
mov edx, 0x405442
mov ecx, esi
push 0x83
push ebp
push ebx
call fcn.01431375
add esp, 0xc
mov edx, 0x40544e
mov ecx, esi
push 0x72
push ebp
push edi
call fcn.01431375
add esp, 0xc
mov eax, 0x40214f
mov edx, 0x40545c
mov ecx, esi
push eax
call fcn.014313ad
add esp, 4
mov edi, eax
push edi
push 0x5f
push ebp
call fcn.01426f89
add esp, 0xc
push edi
call fcn.014287a8
add esp, 4
mov edx, 0x405465
mov ecx, esi
push 0x73
push ebp
mov eax, 0x50
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x40546f
mov ecx, esi
push 0x74
push ebp
push 0x18
call fcn.01431375
add esp, 0xc
mov edx, 0x40547a
mov ecx, esi
push 0x75
push ebp
call fcn.01431754
add esp, 8
mov edx, 0x40547f
mov ecx, esi
push 0x76
push ebp
push ebx
call fcn.01431375
add esp, 0xc
mov edx, 0x40548b
mov ecx, esi
push 0x90
push ebp
push 4
call fcn.01431375
add esp, 0xc
mov edx, 0x405496
mov ecx, esi
push 0x86
push ebp
push ebx
call fcn.01431375
add esp, 0xc
mov edx, 0x4054a7
mov ecx, esi
push 0x87
push ebp
push ebx
call fcn.01431375
add esp, 0xc
mov edx, 0x4054b2
mov ecx, esi
push 0x84
push ebp
xor edi, edi
inc edi
push edi
call fcn.01431375
add esp, 0xc
mov edx, 0x4054bd
mov ecx, esi
push 0x85
push ebp
push edi
call fcn.01431375
add esp, 0xc
xor eax, eax
mov edi, 0x4054cc
inc eax
push eax
push edi
call fcn.0145ee45
add esp, 8
push eax
push edi
push esi
call fcn.0146517c
add esp, 0xc
inc eax
push eax
push 0x88
mov edi, ebp
push ebp
call fcn.01426e31
add esp, 0xc
push ebx
push 0x4054d9
lea ebp, [esp + 0x1c]
push ebp
call fcn.0142783c
add esp, 0xc
mov edx, ebp
mov ebp, ebx
mov ecx, esi
push dword [ebx*4 + 0x404eac]
call fcn.014313ad
add esp, 4
mov ebx, eax
lea eax, [esp + 8]
push eax
lea eax, [esp + 0x10]
push eax
lea eax, [esp + 0x18]
push eax
push 0x4054e2
push ebx
call fcn.0142b8e4
add esp, 0x14
cmp eax, 3
jne 0x1430b64
mov esi, dword [esp]
lea eax, [esi - 2]
push dword [esp + 0x10]
push eax
mov eax, 0x89
push eax
mov eax, edi
push eax
call fcn.01426efb
add esp, 0x10
lea eax, [esi - 1]
push dword [esp + 0xc]
push eax
mov eax, 0x89
push eax
push dword [esp + 0x50]
call fcn.01426efb
add esp, 0x10
push dword [esp + 8]
push esi
mov eax, 0x89
push eax
push dword [esp + 0x50]
mov esi, dword [esp + 0x50]
call fcn.01426efb
add esp, 0x10
push ebx
call fcn.014287a8
add esp, 4
mov ebx, ebp
add dword [esp], 3
inc ebx
cmp ebx, 0x16
jne 0x1430ac7
xor ebp, ebp
mov edx, 0x4054eb
mov ecx, esi
push 0x8c
mov ebx, esi
mov esi, edi
push esi
push ebp
call fcn.01431375
add esp, 0xc
mov edx, 0x4054f2
mov ecx, ebx
push 0x8d
push esi
push ebp
call fcn.01431375
add esp, 0xc
mov edx, 0x4054fb
mov ecx, ebx
push 0x8a
push esi
push ebp
call fcn.01431375
add esp, 0xc
mov edx, 0x405508
mov ecx, ebx
push 0x8b
push esi
push ebp
call fcn.01431375
add esp, 0xc
mov ecx, ebx
xor ebx, ebx
mov edx, 0x405513
push 0x8e
push esi
push 1
call fcn.01431375
add esp, 0xc
push ebx
push 0x405521
lea esi, [esp + 0x1c]
push esi
call fcn.0142783c
add esp, 0xc
mov ecx, dword [esp + 0x40]
mov eax, ebx
mov edx, esi
shr eax, 3
push dword [eax + 0x404f04]
call fcn.014313ad
add esp, 4
lea ebp, [ebx + 0x20]
mov dword [esp], ebx
mov esi, ebx
mov ebx, eax
mov dword [esp + 4], eax
mov cl, byte [ebx]
test cl, cl
je 0x1430c40
cmp cl, 0x2c
je 0x1430c3c
inc ebx
jmp 0x1430c2e
mov byte [ebx], 0
inc ebx
push eax
call fcn.01474fa3
add esp, 4
push eax
push esi
push 0x8f
push edi
call fcn.01426efb
add esp, 0x10
inc esi
mov eax, ebx
cmp esi, ebp
jl 0x1430c2e
push dword [esp + 4]
call fcn.014287a8
add esp, 4
cmp dword [esp], 0xe0
mov ebx, ebp
jl 0x1430bf4
sub esp, 4
mov ebx, dword [esp + 0x44]
mov eax, 0x40214f
mov edx, 0x40552e
mov dword [esp], eax
mov ecx, ebx
call fcn.014313ad
add esp, 4
mov esi, eax
push esi
push 0x91
mov ebp, edi
push ebp
call fcn.01426f89
add esp, 0xc
push esi
call fcn.014287a8
add esp, 4
xor eax, eax
mov edx, 0x40553b
mov ecx, ebx
push 0x92
push ebp
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x405548
mov ecx, ebx
push 0x93
push ebp
xor esi, esi
inc esi
push esi
call fcn.01431375
add esp, 0xc
mov eax, 0x40214f
mov edx, 0x405555
mov ecx, ebx
push eax
call fcn.014313ad
add esp, 4
mov edi, eax
push edi
push 0x81
push ebp
call fcn.01426f89
add esp, 0xc
push edi
call fcn.014287a8
add esp, 4
mov edx, 0x40555d
mov ecx, ebx
push 0x94
push ebp
xor edi, edi
push edi
call fcn.01431375
add esp, 0xc
mov edx, 0x405569
mov ecx, ebx
push 0x6d
push ebp
push esi
call fcn.01431375
add esp, 0xc
mov edx, 0x405573
mov ecx, ebx
push 0x6e
push ebp
push edi
call fcn.01431375
add esp, 0xc
mov edx, 0x405587
mov ecx, ebx
push 0x58
push ebp
push edi
xor edi, edi
call fcn.01431375
add esp, 0xc
mov edx, 0x405593
mov ecx, ebx
push 0x59
push ebp
push esi
call fcn.01431375
add esp, 0xc
mov edx, 0x4055a0
mov ecx, ebx
push 0x5a
push ebp
push esi
call fcn.01431375
add esp, 0xc
mov edx, 0x4055b2
mov ecx, ebx
push 0x6f
push ebp
push edi
call fcn.01431375
add esp, 0xc
mov edx, 0x4055bb
mov ecx, ebx
push 0x70
push ebp
push esi
call fcn.01431375
add esp, 0xc
mov edx, 0x4055bf
mov ecx, ebx
push 0x71
push ebp
push edi
call fcn.01431375
add esp, 0xc
mov edx, 0x4055c9
mov ecx, ebx
push 0x95
push ebp
push edi
call fcn.01431375
add esp, 0xc
mov eax, 0x40214f
mov edx, 0x4055d4
mov ecx, ebx
push eax
call fcn.014313ad
add esp, 4
mov edi, eax
push edi
push 0x96
push ebp
call fcn.01426f89
add esp, 0xc
push edi
call fcn.014287a8
add esp, 4
mov edx, 0x4055df
mov ecx, ebx
push 0x97
push ebp
push esi
xor esi, esi
call fcn.01431375
add esp, 0xc
mov edx, 0x4055eb
mov ecx, ebx
push 0x98
push ebp
call fcn.01431333
add esp, 8
mov edx, 0x4055f7
mov ecx, ebx
push 0x99
push ebp
push esi
call fcn.01431375
add esp, 0xc
mov edx, 0x40560a
mov ecx, ebx
push 0x9a
push ebp
push esi
call fcn.01431375
add esp, 0xc
mov edx, 0x40561e
mov ecx, ebx
push 0x9b
push ebp
call fcn.014313e2
add esp, 8
mov edi, 0x40562e
push esi
push edi
call fcn.0145ee45
add esp, 8
push eax
push edi
push ebx
call fcn.0146517c
add esp, 0xc
mov ecx, 2
sub ecx, eax
push ecx
push 0x9c
push ebp
call fcn.01426e31
add esp, 0xc
mov edi, 0x405639
push esi
push edi
call fcn.0145ee45
add esp, 8
push eax
push edi
push ebx
call fcn.0146517c
add esp, 0xc
mov ecx, 2
sub ecx, eax
push ecx
push 0x9d
push ebp
call fcn.01426e31
add esp, 0xc
mov edi, 0x405645
push esi
push edi
call fcn.0145ee45
add esp, 8
push eax
push edi
push ebx
call fcn.0146517c
add esp, 0xc
mov ecx, 2
sub ecx, eax
push ecx
push 0x9e
push ebp
call fcn.01426e31
add esp, 0xc
mov edi, 0x40564d
push esi
push edi
call fcn.0145ee45
add esp, 8
push eax
push edi
push ebx
call fcn.0146517c
add esp, 0xc
mov ecx, 2
sub ecx, eax
push ecx
push 0xa5
push ebp
call fcn.01426e31
add esp, 0xc
mov edi, 0x405658
push esi
push edi
call fcn.0145ee45
add esp, 8
push eax
push edi
push ebx
call fcn.0146517c
add esp, 0xc
mov edi, eax
mov ecx, 2
sub ecx, edi
push ecx
push 0x9f
push ebp
call fcn.01426e31
add esp, 0xc
test edi, edi
jne 0x1430fab
sub esp, 8
mov edi, 0x405b9b
mov dword [esp], edi
mov dword [esp + 4], 0
call fcn.0145ee45
add esp, 8
push eax
push edi
push ebx
call fcn.0146517c
add esp, 0xc
cmp eax, 1
jne 0x1430fab
push 0
push 0x9f
push ebp
call fcn.01426e31
add esp, 0xc
xor eax, eax
mov edi, 0x405661
push eax
xor esi, esi
push edi
call fcn.0145ee45
add esp, 8
push eax
push edi
push ebx
call fcn.0146517c
add esp, 0xc
mov ecx, 2
sub ecx, eax
push ecx
push 0xa0
push ebp
call fcn.01426e31
add esp, 0xc
mov edi, 0x40566f
push esi
xor esi, esi
push edi
call fcn.0145ee45
add esp, 8
push eax
push edi
push ebx
call fcn.0146517c
add esp, 0xc
mov ecx, 2
sub ecx, eax
push ecx
push 0xa1
push ebp
call fcn.01426e31
add esp, 0xc
mov edi, 0x40567a
push esi
xor esi, esi
push edi
call fcn.0145ee45
add esp, 8
push eax
push edi
push ebx
call fcn.0146517c
add esp, 0xc
mov ecx, 2
sub ecx, eax
push ecx
push 0xa2
push ebp
call fcn.01426e31
add esp, 0xc
mov edi, 0x405687
push esi
xor esi, esi
push edi
call fcn.0145ee45
add esp, 8
push eax
push edi
push ebx
call fcn.0146517c
add esp, 0xc
mov ecx, 2
sub ecx, eax
push ecx
push 0xa3
push ebp
call fcn.01426e31
add esp, 0xc
mov edi, 0x405691
push esi
xor esi, esi
push edi
call fcn.0145ee45
add esp, 8
push eax
push edi
push ebx
call fcn.0146517c
add esp, 0xc
mov ecx, 2
sub ecx, eax
push ecx
push 0xa4
push ebp
call fcn.01426e31
add esp, 0xc
mov edi, 0x40569c
push esi
xor esi, esi
push edi
call fcn.0145ee45
add esp, 8
push eax
push edi
push ebx
call fcn.0146517c
add esp, 0xc
mov ecx, 2
sub ecx, eax
push ecx
push 0xa6
push ebp
call fcn.01426e31
add esp, 0xc
mov edi, 0x4056a7
push esi
xor esi, esi
push edi
call fcn.0145ee45
add esp, 8
push eax
push edi
push ebx
call fcn.0146517c
add esp, 0xc
mov ecx, 2
sub ecx, eax
push ecx
push 0xa7
push ebp
call fcn.01426e31
add esp, 0xc
mov edi, 0x4056b1
push esi
xor esi, esi
push edi
call fcn.0145ee45
add esp, 8
push eax
push edi
push ebx
call fcn.0146517c
add esp, 0xc
mov ecx, 2
sub ecx, eax
push ecx
push 0xa8
push ebp
call fcn.01426e31
add esp, 0xc
push esi
xor esi, esi
push 0xa9
push ebp
call fcn.01426e31
add esp, 0xc
mov edx, 0x4056bc
mov ecx, ebx
push 0xae
push ebp
xor eax, eax
inc eax
push eax
mov edi, eax
call fcn.01431375
add esp, 0xc
mov edx, 0x4056c6
mov ecx, ebx
push 0xaf
push ebp
push edi
call fcn.01431375
add esp, 0xc
mov edx, 0x4056d1
mov ecx, ebx
push 0xb0
push ebp
push esi
call fcn.01431375
add esp, 0xc
mov edx, 0x405700
mov ecx, ebx
push 0xb1
push ebp
push esi
xor esi, esi
call fcn.01431375
add esp, 0xc
mov edx, 0x4056e1
mov ecx, ebx
push 0xb2
push ebp
call fcn.01431754
add esp, 8
mov edx, 0x4056ea
mov ecx, ebx
push 0xb3
push ebp
call fcn.01431754
add esp, 8
mov edx, 0x4056f3
mov ecx, ebx
push 0xb4
push ebp
call fcn.01431754
add esp, 8
mov edx, 0x40570b
mov ecx, ebx
push 0xb5
push ebp
push edi
call fcn.01431375
add esp, 0xc
mov eax, 0x40214f
mov edx, 0x40571c
mov ecx, ebx
push eax
call fcn.014313ad
add esp, 4
mov edi, eax
push edi
push 0x39
push ebp
call fcn.01426f89
add esp, 0xc
push edi
call fcn.014287a8
add esp, 4
mov edx, 0x405727
mov ecx, ebx
push 0x3a
push ebp
push 0x2580
call fcn.01431375
add esp, 0xc
mov edx, 0x405733
mov ecx, ebx
push 0x3b
push ebp
push 8
call fcn.01431375
add esp, 0xc
mov edx, 0x405742
mov ecx, ebx
push 0x3c
push ebp
mov eax, 2
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x405755
mov ecx, ebx
push 0x3d
push ebp
push esi
call fcn.01431375
add esp, 0xc
mov edx, 0x405762
mov ecx, ebx
push 0x3e
push ebp
xor esi, esi
inc esi
push esi
call fcn.01431375
add esp, 0xc
mov eax, 0x40214f
mov edx, 0x405774
mov ecx, ebx
push eax
call fcn.014313ad
add esp, 4
mov edi, eax
push edi
push 0xb7
push ebp
call fcn.01426f89
add esp, 0xc
push edi
call fcn.014287a8
add esp, 4
mov edx, 0x405780
mov ecx, ebx
push 0xaa
push ebp
xor eax, eax
push eax
call fcn.01431375
add esp, 0xc
mov edx, 0x405792
mov ecx, ebx
push 0xab
push ebp
push esi
call fcn.01431375
add esp, 0xc
mov edx, 0x4057ac
mov ecx, ebx
push 0xac
push ebp
push esi
call fcn.01431375
add esp, 0xc
mov edx, 0x4057c8
mov ecx, ebx
push 0xad
push ebp
call fcn.014313e2
add esp, 8
mov ecx, dword [esp + 0x28]
call fcn.01466d40
add esp, 0x2c
pop esi
pop edi
pop ebx
pop ebp
ret