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

Disassembly:
push ebx
push edi
push esi
sub esp, 0x5d8
mov eax, 0x8778148
mov cx, word [0x48ddba]
mov dx, cx
dec edx
mov cx, dx
mov word [0x48ddba], cx
movsx edx, cx
mov esi, dword [0x49447c]
dec esi
mov dword [0x49447c], esi
sub edx, esi
or edx, 0x76625548
cmp eax, edx
jne 0x42962b
mov eax, 0x237ff64a
mov ecx, dword [0x493798]
cmp eax, ecx
jg 0x429626
mov eax, dword [0x4942e4]
imul eax, eax, 0x74bdb8f4
mov dword [0x4942e4], eax
jmp 0x42962b
lea ecx, [esp + 0x598]
call fcn.0044e330
mov dx, word [0x48f5a4]
mov cx, dx
and ecx, 0x7d5f
mov dx, cx
mov word [0x48f5a4], dx
mov dx, word [0x48fe66]
mov cx, dx
or ecx, 0x72fd
mov dx, cx
mov word [0x48fe66], dx
mov dword [0x49478c], 0xd3f96e2b
mov dword [0x492078], 0x3890b58
mov dword [esp + 0x118], 0
mov ecx, dword [0x491244]
xor ecx, 0xffffffff
cmp ecx, 0xfe5c8a40
mov dword [esp + 0x114], eax
jne 0x42975d
mov ax, word [0x49110a]
movsx ecx, ax
mov edx, 0x8713d60c
sub edx, ecx
mov ax, word [0x48f128]
mov cx, ax
dec ecx
mov ax, cx
mov word [0x48f128], ax
movsx ecx, ax
add edx, ecx
cmp edx, 0xe2df4edb
jg 0x42971e
mov eax, 0xd0d44961
mov cx, word [0x49105e]
mov dx, cx
inc edx
mov si, dx
mov word [0x49105e], si
movsx edx, cx
and edx, 0x397f4720
mov edi, dword [0x4952dc]
inc edi
mov dword [0x4952dc], edi
and edx, edi
cmp eax, edx
jle 0x429719
jmp 0x429719
jmp 0x429758
mov eax, dword [0x493558]
not eax
mov cx, word [0x490d54]
movsx edx, cx
sar edx, 9
add edx, 0x305bf841
and eax, edx
mov edx, dword [0x494010]
xor edx, 0x912146f6
cmp eax, edx
je 0x429753
jmp 0x429753
jmp 0x429758
jmp 0x42975d
mov eax, 0xeffeecdb
mov dword [0x497d30], 0x94
mov cx, word [0x48dd70]
movsx edx, cx
mov esi, dword [0x493b98]
xor esi, edx
mov dword [0x493b98], esi
mov edx, dword [0x48da60]
mov esi, esp
mov dword [esi], 0x497d30
mov dword [esp + 0x110], eax
call edx
sub esp, 4
mov edx, dword [0x497bd0]
inc edx
mov dword [0x497bd0], edx
mov esi, dword [0x495344]
shl esi, 1
or edx, esi
or edx, 0x7094a549
mov esi, dword [esp + 0x110]
cmp esi, edx
mov dword [esp + 0x10c], eax
jne 0x42981f
mov eax, dword [0x493aa4]
and eax, 0xde8790bf
mov cx, word [0x49001e]
mov dx, cx
inc edx
mov cx, dx
mov word [0x49001e], cx
movsx edx, cx
cmp eax, edx
jl 0x429810
mov eax, dword [0x492218]
xor eax, 0x91d93f02
mov dword [0x492218], eax
jmp 0x42981a
mov dword [0x495e1c], 0xddb9fa7c
jmp 0x42982e
mov eax, dword [0x497834]
add eax, 0xad5baa6c
mov dword [0x497834], eax
call fcn.004132e0
mov dword [0x498700], eax
mov cx, word [0x48f4c6]
mov ax, cx
dec eax
mov cx, ax
mov word [0x48f4c6], cx
movsx eax, cx
cmp eax, 0x5b381440
jge 0x42988b
mov ax, word [0x48dd74]
mov cx, ax
dec ecx
mov ax, cx
mov word [0x48dd74], ax
movsx ecx, ax
add ecx, 0x496fa6c3
and ecx, 0xd52f7361
mov edx, dword [0x495768]
sub edx, ecx
mov dword [0x495768], edx
call fcn.0044b0e0
mov dword [0x498704], eax
mov eax, dword [0x4926dc]
shl eax, 2
mov ecx, dword [0x493be0]
or ecx, eax
mov dword [0x493be0], ecx
mov eax, dword [0x498700]
cmp eax, 0
je 0x429ae7
mov eax, 0xd5bae213
mov ecx, dword [0x491404]
not ecx
add ecx, 0x2e595896
mov dx, word [0x49008a]
mov si, dx
sub esi, ecx
mov dx, si
mov word [0x49008a], dx
mov ecx, esp
lea esi, [esp + 0x128]
mov dword [ecx], esi
mov dword [esp + 0x108], eax
mov dword [esp + 0x104], esi
call fcn.00442600
mov dword [esp + 0x124], eax
mov eax, dword [0x4914a8]
and eax, 0xf4a98197
mov dword [0x4914a8], eax
mov eax, dword [esp + 0x124]
mov byte [esp + eax + 0x128], 0x5c
mov dx, word [0x48ea90]
mov ax, dx
add eax, 0x752d1605
mov dx, ax
mov word [0x48ea90], dx
mov eax, dword [esp + 0x124]
inc eax
mov dword [esp + 0x124], eax
mov dx, word [0x48e2c4]
mov ax, dx
xor eax, 0x7376
mov dx, ax
mov word [0x48e2c4], dx
mov eax, dword [esp + 0x124]
mov byte [esp + eax + 0x128], 0
mov eax, dword [0x4921d0]
mov ecx, eax
inc ecx
mov dword [0x4921d0], ecx
mov dx, word [0x490870]
mov cx, dx
xor ecx, eax
mov dx, cx
mov word [0x490870], dx
mov eax, dword [0x498740]
mov ecx, esp
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x104]
mov dword [ecx], eax
call fcn.00455820
mov ecx, dword [0x49305c]
xor ecx, 0xda01f425
mov dword [0x49305c], ecx
mov ecx, dword [0x48daa8]
mov esi, esp
mov edi, dword [esp + 0x104]
mov dword [esi], edi
mov dword [esi + 4], 0
mov dword [esp + 0x100], eax
call ecx
sub esp, 8
mov dx, word [0x48fcc6]
mov cx, dx
inc ecx
mov bx, cx
mov word [0x48fcc6], bx
movsx ecx, dx
xor ecx, 0x60106
mov esi, dword [0x496994]
and esi, ecx
mov dword [0x496994], esi
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x395c
mov dword [esp + 0xfc], eax
call fcn.00443650
mov dword [esp + 0x5d4], eax
mov eax, dword [0x492f54]
and eax, 0xc4092a50
mov ecx, dword [0x492830]
add ecx, eax
mov dword [0x492830], ecx
mov eax, dword [esp + 0x5d4]
mov ecx, esp
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x104]
mov dword [ecx], eax
call fcn.00455820
mov ecx, dword [0x493458]
inc ecx
mov dword [0x493458], ecx
mov esi, dword [esp + 0x108]
cmp esi, ecx
mov dword [esp + 0xf8], eax
jge 0x429a9a
mov eax, dword [0x491e68]
imul eax, eax, 0x46ec4a
mov dword [0x491e68], eax
mov eax, dword [esp + 0x5d4]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0x1f
call fcn.00428120
mov dx, word [0x48e4a2]
mov ax, dx
mov ecx, dword [0x4927b8]
mov esi, ecx
dec esi
mov dword [0x4927b8], esi
or eax, ecx
mov dx, word [0x48f912]
mov cx, dx
and ecx, eax
mov dx, cx
mov word [0x48f912], dx
jmp 0x429b18
mov eax, dword [0x496c58]
not eax
and eax, 0xf2d800b0
mov ecx, dword [0x491c54]
add ecx, eax
mov dword [0x491c54], ecx
mov byte [esp + 0x128], 0
mov eax, dword [0x494d78]
add eax, 0xf7e23cd5
mov dword [0x494d78], eax
lea eax, [esp + 0x598]
lea ecx, [esp + 0x128]
mov edx, dword [0x49691c]
imul edx, edx, 0x3415e6f
mov esi, dword [0x496f90]
or edx, esi
or edx, 0xe5ced81d
mov dword [0x496f90], edx
mov edx, esp
mov dword [edx + 4], 0x1f
mov dword [edx], 0x38
mov dword [esp + 0xf4], eax
mov dword [esp + 0xf0], ecx
call fcn.00443650
mov dword [esp + 0x5d0], eax
mov eax, dword [0x497344]
mov ecx, dword [0x495aa8]
and ecx, eax
mov dword [0x495aa8], ecx
mov eax, dword [esp + 0x5d0]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x598]
call fcn.00432d90
sub esp, 4
mov di, word [0x490ce6]
mov cx, di
xor ecx, 0xc861
mov di, cx
mov word [0x490ce6], di
mov ecx, dword [esp + 0x5d0]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0xec], eax
call fcn.00428120
mov eax, dword [0x49678c]
and eax, 0x59ebcedc
mov dword [0x49678c], eax
mov eax, dword [esp + 0xf4]
mov ecx, eax
call fcn.0043f980
lea ecx, [esp + 0x598]
mov dword [esp + 0xe8], eax
call fcn.004218a0
mov ecx, 0x861d9fa
mov dword [esp], eax
mov eax, dword [esp + 0xe8]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xf0]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x861d9fa
mov dword [esp + 0xe4], ecx
call fcn.00412870
cmp eax, 0
je 0x429cf3
mov eax, dword [0x491eac]
xor eax, 0x1001964
mov dword [0x491eac], eax
mov dword [esp + 0x118], 1
mov eax, dword [0x492c78]
shl eax, 9
mov dword [0x493a6c], eax
mov eax, dword [0x48da34]
mov ecx, esp
lea edx, [esp + 0x128]
mov dword [ecx], edx
mov dword [esp + 0xe0], edx
call eax
sub esp, 4
mov ecx, dword [0x49772c]
add ecx, 0x46220000
mov dword [0x49772c], ecx
mov ecx, dword [esp + 0x124]
mov byte [esp + ecx + 0x128], 0
mov si, word [0x490d24]
mov cx, si
xor ecx, 0xdef4
mov si, cx
mov word [0x490d24], si
mov ecx, dword [0x48daac]
mov edx, esp
mov edi, dword [esp + 0xe0]
mov dword [edx], edi
mov dword [esp + 0xdc], eax
call ecx
sub esp, 4
mov ecx, dword [0x4944c0]
and ecx, 0x497540da
mov dword [0x4944c0], ecx
mov dword [esp + 0xd8], eax
mov eax, dword [0x494c64]
mov cx, word [0x48fcf6]
mov dx, cx
inc edx
mov si, dx
mov word [0x48fcf6], si
movsx edx, cx
xor eax, edx
mov edx, dword [0x496544]
xor edx, 0xffffffff
add edx, 0xdcec97ff
cmp eax, edx
jle 0x429d33
mov dword [0x495a70], 0xc0412
mov eax, esp
lea ecx, [esp + 0x128]
mov dword [eax], ecx
call fcn.00442600
mov ecx, dword [0x494b48]
xor ecx, 0xcfa27431
mov dword [0x494b48], ecx
mov byte [esp + 0x12b], 0
mov ecx, dword [0x491a8c]
mov edx, dword [0x49481c]
xor edx, 0xffffffff
cmp ecx, edx
mov dword [esp + 0xd4], eax
jl 0x429dc6
mov eax, 0x5a340ae4
mov ecx, dword [0x49797c]
mov edx, ecx
dec edx
mov dword [0x49797c], edx
mov edx, dword [0x491814]
sar edx, 8
sub ecx, edx
cmp eax, ecx
jge 0x429dc1
mov eax, dword [0x492690]
cmp eax, 0x123b9656
jg 0x429db7
jmp 0x429dbc
jmp 0x429dbc
jmp 0x429dc1
jmp 0x429de9
mov ax, word [0x48e4c4]
movsx ecx, ax
and ecx, 0x160bdd08
xor ecx, 0xbe7b4cb0
mov edx, dword [0x49491c]
and edx, ecx
mov dword [0x49491c], edx
mov eax, dword [0x498740]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x128]
mov dword [ecx], eax
mov dword [esp + 0xd0], eax
call fcn.00455820
mov ecx, dword [0x493f64]
or ecx, 0x80d5f2b5
mov dword [0x493f64], ecx
mov ecx, dword [0x48daa8]
mov edx, esp
mov esi, dword [esp + 0xd0]
mov dword [edx], esi
mov dword [edx + 4], 0
mov dword [esp + 0xcc], eax
call ecx
sub esp, 8
mov dword [0x49366c], 0x36b9f4c6
mov ecx, esp
mov edx, dword [esp + 0xd0]
mov dword [ecx + 4], edx
mov dword [ecx], 0x497f5c
mov dword [esp + 0xc8], eax
call fcn.00455810
mov ecx, dword [0x492378]
not ecx
mov di, cx
mov word [0x490f4c], di
cmp dword [esp + 0x118], 0
mov dword [esp + 0xc4], eax
jne 0x429eb6
mov eax, dword [0x4920a4]
add eax, 0xc793b02e
mov dword [0x4920a4], eax
mov dword [0x4986fc], 0
mov eax, dword [0x4974d4]
imul eax, eax, 0x844431f
mov dword [0x4974d4], eax
mov eax, dword [0x491e6c]
mov ecx, eax
dec ecx
mov dword [0x491e6c], ecx
add eax, 0x37d74637
mov ecx, dword [0x49174c]
dec ecx
mov dword [0x49174c], ecx
and eax, ecx
mov dword [0x493598], eax
mov eax, esp
lea ecx, [esp + 0x128]
mov dword [eax], ecx
mov dword [esp + 0xc0], ecx
call fcn.0044ddf0
mov dword [esp + 0x124], eax
mov eax, dword [0x497a1c]
mov ecx, dword [0x4936ec]
xor eax, ecx
xor eax, 0x4560f3d3
mov dword [0x4936ec], eax
mov eax, dword [0x48daa8]
mov ecx, esp
mov edx, dword [esp + 0xc0]
mov dword [ecx], edx
mov dword [ecx + 4], 0
call eax
sub esp, 8
mov si, word [0x49025e]
mov cx, si
dec ecx
mov di, cx
mov word [0x49025e], di
movsx ecx, si
mov edx, dword [0x49676c]
shl edx, 4
imul ecx, edx
or ecx, 0x5640223b
cmp ecx, 0xfdff9fff
mov dword [esp + 0xbc], eax
jge 0x429f83
mov ax, word [0x48e4b2]
mov cx, ax
xor ecx, 0xf102
mov ax, cx
mov word [0x48e4b2], ax
mov eax, esp
mov dword [eax + 4], 0x1f
mov dword [eax], 0x395c
call fcn.00443650
mov dword [esp + 0x5cc], eax
mov eax, dword [0x49639c]
shl eax, 5
mov ecx, 0x76c637e7
sub ecx, eax
mov eax, dword [0x496d64]
and eax, ecx
mov dword [0x496d64], eax
mov eax, dword [esp + 0x5cc]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x128]
mov dword [ecx], eax
call fcn.00455820
mov ecx, dword [0x492868]
imul ecx, ecx, 0xca635702
mov edx, 0x259ff613
sub edx, ecx
mov dword [0x497760], edx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x38
mov dword [esp + 0xb8], eax
call fcn.00443650
mov dword [esp + 0x5c8], eax
mov eax, dword [0x4937b4]
add eax, 0x709e3e4a
mov dword [0x4937b4], eax
mov eax, dword [esp + 0x5cc]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0x1f
call fcn.00428120
mov si, word [0x48fd1a]
mov ax, si
inc eax
mov si, ax
mov word [0x48fd1a], si
movsx eax, si
mov ecx, dword [0x495c00]
or ecx, eax
mov dword [0x495c00], ecx
mov eax, dword [esp + 0x5c8]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x598]
call fcn.00432d90
sub esp, 4
mov ecx, dword [0x494998]
mov edx, ecx
dec edx
mov dword [0x494998], edx
and ecx, 0x288
mov si, word [0x4906f0]
mov dx, si
or edx, ecx
mov si, dx
mov word [0x4906f0], si
mov ecx, dword [esp + 0x5c8]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0xb4], eax
call fcn.00428120
mov si, word [0x48f9d0]
movsx eax, si
mov ecx, dword [0x4947a8]
mov edx, ecx
dec edx
mov dword [0x4947a8], edx
imul ecx, ecx, 0x525afdaa
or eax, ecx
cmp eax, 0x7b18b436
jle 0x42a0fe
mov eax, dword [0x493a80]
imul eax, eax, 0x43ddbfbc
mov cx, ax
mov word [0x48f1e6], cx
lea eax, [esp + 0x598]
lea ecx, [esp + 0x128]
mov dword [esp + 0xb0], ecx
mov ecx, eax
call fcn.0043f980
lea ecx, [esp + 0x598]
mov dword [esp + 0xac], eax
call fcn.004218a0
mov ecx, 0x861d9fa
mov dword [esp], eax
mov eax, dword [esp + 0xac]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x861d9fa
mov dword [esp + 0xa8], ecx
call fcn.00412870
cmp eax, 0
jne 0x42ad52
mov eax, dword [0x4930c4]
shl eax, 4
mov ecx, dword [0x49220c]
sub eax, ecx
mov ecx, dword [0x49295c]
add ecx, eax
mov dword [0x49295c], ecx
cmp dword [0x497d34], 6
jb 0x42a2a6
mov eax, 0x8182dc62
mov ecx, dword [0x49691c]
imul ecx, ecx, 0xccfa5eb5
and ecx, 0x384c
mov dx, word [0x49073c]
mov si, dx
sub esi, ecx
mov dx, si
mov word [0x49073c], dx
mov ecx, esp
mov dword [ecx + 4], 0x12
mov dword [ecx], 0xe37
mov dword [esp + 0xa4], eax
call fcn.00443650
mov dword [esp + 0x5c4], eax
mov eax, dword [0x495898]
mov ecx, dword [esp + 0xa4]
cmp ecx, eax
jne 0x42a211
mov eax, dword [0x4955dc]
mov cx, word [0x48ea54]
mov dx, cx
add edx, eax
mov cx, dx
mov word [0x48ea54], cx
mov eax, dword [esp + 0x5c4]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x128]
mov dword [ecx], eax
mov dword [ecx + 8], 0x497dc4
call fcn.00455d43
mov ecx, dword [0x497778]
dec ecx
mov dword [0x497778], ecx
or ecx, 0xac76dfd
mov edx, dword [0x495dc4]
sub edx, ecx
mov dword [0x495dc4], edx
mov ecx, dword [esp + 0x5c4]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x12
mov dword [esp + 0xa0], eax
call fcn.00428120
mov si, word [0x49048e]
mov ax, si
inc eax
mov di, ax
mov word [0x49048e], di
movsx eax, si
add eax, 0xf1aeaab4
xor eax, 0xa649746c
mov ecx, dword [0x494868]
and ecx, eax
mov dword [0x494868], ecx
jmp 0x42a32f
mov dword [0x496d4c], 0x94f783ff
mov eax, esp
mov dword [eax + 4], 0x24
mov dword [eax], 0x5b61
call fcn.00443650
mov dword [esp + 0x5c0], eax
mov word [0x48de34], 0x2fe0
mov eax, dword [esp + 0x5c0]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x128]
mov dword [ecx], eax
mov dword [ecx + 8], 0x497dc4
call fcn.00455d43
mov ecx, dword [0x495ac0]
add ecx, 0x95d358e4
mov dword [0x495ac0], ecx
mov ecx, dword [esp + 0x5c0]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x24
mov dword [esp + 0x9c], eax
call fcn.00428120
mov dword [0x497a2c], 0x19ce889c
mov eax, 0xfed677ef
mov ecx, dword [0x497c34]
dec ecx
mov dword [0x497c34], ecx
mov dx, word [0x48f104]
mov si, dx
and ecx, esi
and ecx, 0x2ec1
mov dx, cx
mov word [0x48f104], dx
mov byte [esp + 0x597], 0
mov ecx, dword [0x495720]
xor ecx, 0xf083c92c
mov dword [0x495720], ecx
mov ecx, dword [0x498740]
mov esi, esp
mov dword [esi + 4], ecx
lea ecx, [esp + 0x128]
mov dword [esi], ecx
mov dword [esp + 0x98], eax
mov dword [esp + 0x94], ecx
call fcn.00455820
mov ecx, dword [0x493400]
and ecx, 0xe7ec65c5
mov dword [0x493400], ecx
mov ecx, dword [0x48daa8]
mov esi, esp
mov edi, dword [esp + 0x94]
mov dword [esi], edi
mov dword [esi + 4], 0
mov dword [esp + 0x90], eax
call ecx
sub esp, 8
mov ecx, dword [0x496814]
mov esi, dword [esp + 0x98]
cmp esi, ecx
mov dword [esp + 0x8c], eax
jg 0x42a408
mov ax, word [0x48f72c]
mov cx, ax
imul ecx, ecx, 0xcab87b25
mov ax, cx
mov word [0x48f72c], ax
mov eax, 0x8034084
mov ecx, esp
lea edx, [esp + 0x128]
mov dword [ecx + 4], edx
mov dword [ecx], 0x497f5c
mov dword [esp + 0x88], eax
call fcn.00455810
mov ecx, dword [0x491e04]
dec ecx
mov dword [0x491e04], ecx
add ecx, 0xbd7f9772
mov edx, dword [esp + 0x88]
cmp edx, ecx
mov dword [esp + 0x84], eax
jl 0x42a45e
mov dword [0x492ef8], 0xedf5226e
mov eax, 0x9018abf3
mov ecx, esp
lea edx, [esp + 0x128]
mov dword [ecx], edx
mov dword [esp + 0x80], eax
mov dword [esp + 0x7c], edx
call fcn.0044ddf0
mov dword [esp + 0x124], eax
mov eax, dword [0x493960]
dec eax
mov dword [0x493960], eax
mov ecx, dword [0x4973dc]
sub ecx, eax
mov dword [0x4973dc], ecx
mov eax, dword [0x48daa8]
mov ecx, esp
mov edx, dword [esp + 0x7c]
mov dword [ecx], edx
mov dword [ecx + 4], 0
call eax
sub esp, 8
mov ecx, dword [0x492ba4]
or ecx, 0x9a2dcc57
mov dword [0x492ba4], ecx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x395c
mov dword [esp + 0x78], eax
call fcn.00443650
mov dword [esp + 0x5bc], eax
mov eax, dword [0x493110]
and eax, 0x4b8d419a
mov dword [0x493110], eax
mov eax, dword [esp + 0x5bc]
mov ecx, esp
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x7c]
mov dword [ecx], eax
call fcn.00455820
mov ecx, dword [0x4946b4]
xor ecx, 0xffffffff
mov edx, dword [esp + 0x80]
cmp edx, ecx
mov dword [esp + 0x74], eax
je 0x42a55a
mov eax, 0x8056523f
mov ecx, dword [0x4972dc]
sar ecx, 3
imul ecx, ecx, 0x2b1bb1ec
cmp eax, ecx
jne 0x42a555
mov eax, dword [0x49603c]
and eax, 0x21f96bff
mov dword [0x49603c], eax
jmp 0x42a55a
lea eax, [esp + 0x598]
lea ecx, [esp + 0x128]
mov edx, esp
mov dword [edx + 4], 0x1f
mov dword [edx], 0x38
mov dword [esp + 0x70], eax
mov dword [esp + 0x6c], ecx
call fcn.00443650
mov dword [esp + 0x5b8], eax
mov si, word [0x48df5a]
movsx eax, si
and eax, 0x207abc76
mov si, word [0x490c24]
movsx ecx, si
xor eax, ecx
mov ecx, dword [0x49387c]
and ecx, eax
mov dword [0x49387c], ecx
mov eax, dword [esp + 0x5bc]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0x1f
call fcn.00428120
mov eax, dword [0x495f3c]
add eax, 0xaa0a44d
mov dword [0x495f3c], eax
mov eax, dword [esp + 0x5b8]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x598]
call fcn.00432d90
sub esp, 4
mov ecx, dword [0x491ea4]
not ecx
or ecx, 0x6eb0672
mov edx, dword [0x4911fc]
sub edx, ecx
mov dword [0x4911fc], edx
mov ecx, dword [esp + 0x5b8]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0x68], eax
call fcn.00428120
mov si, word [0x48e8ec]
mov ax, si
imul eax, eax, 0x9536a827
mov si, ax
mov word [0x48e8ec], si
mov eax, dword [esp + 0x70]
mov ecx, eax
call fcn.0043f980
lea ecx, [esp + 0x598]
mov dword [esp + 0x64], eax
call fcn.004218a0
mov ecx, 0x861d9fa
mov dword [esp], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x861d9fa
mov dword [esp + 0x60], ecx
call fcn.00412870
cmp eax, 0
jne 0x42ad0c
mov ax, word [0x4903f4]
mov cx, ax
inc ecx
mov ax, cx
mov word [0x4903f4], ax
movsx ecx, ax
mov ax, word [0x48e74a]
mov dx, ax
dec edx
mov ax, dx
mov word [0x48e74a], ax
movsx edx, ax
sub ecx, edx
add ecx, 0xcaef30e7
mov edx, dword [0x4951c0]
or edx, ecx
mov dword [0x4951c0], edx
mov ecx, dword [0x48da50]
mov edx, esp
lea esi, [esp + 0x128]
mov dword [edx + 4], esi
mov dword [edx], 0x104
mov dword [esp + 0x5c], esi
call ecx
sub esp, 8
mov ecx, dword [0x496a24]
imul ecx, ecx, 0x21e98e78
mov dword [0x496a24], ecx
mov ecx, esp
mov edx, dword [esp + 0x5c]
mov dword [ecx], edx
mov dword [esp + 0x58], eax
call fcn.00452630
mov dword [esp + 0x124], eax
mov eax, dword [0x495c9c]
add eax, 0x3106011
mov dword [0x495c9c], eax
mov eax, dword [esp + 0x124]
add eax, 0xfffffffe
mov dword [esp + 0x124], eax
mov eax, dword [0x4964e0]
add eax, 0xa88e8f55
and eax, 0x76dd16fb
mov ecx, dword [0x49464c]
add ecx, eax
mov dword [0x49464c], ecx
mov eax, dword [esp + 0x124]
mov dword [esp + 0x120], eax
cmp dword [esp + 0x120], 0
jle 0x42a86b
mov eax, dword [0x495c74]
add eax, 0xa25dd5a3
mov dword [0x495c74], eax
mov eax, dword [esp + 0x120]
movsx eax, byte [esp + eax + 0x128]
cmp eax, 0x5c
jne 0x42a838
mov eax, 0x12880d6
mov ecx, dword [0x497c30]
xor ecx, 0xffffffff
xor ecx, 0xcd6caa0f
cmp eax, ecx
jle 0x42a7c5
mov dword [0x492824], 0x5d776e12
mov eax, dword [esp + 0x120]
inc eax
mov dword [esp + 0x120], eax
mov eax, dword [0x4971b4]
xor eax, 0xfeec8170
mov dword [0x4971b4], eax
mov eax, dword [esp + 0x120]
mov byte [esp + eax + 0x128], 0
mov eax, dword [0x4922e4]
xor eax, 0xa913b7b0
mov dword [0x4922e4], eax
mov eax, dword [esp + 0x120]
mov dword [esp + 0x124], eax
mov eax, dword [0x4969e4]
mov ecx, eax
dec ecx
mov dword [0x4969e4], ecx
mov dx, word [0x490534]
mov cx, dx
and ecx, eax
mov dx, cx
mov word [0x490534], dx
jmp 0x42a86b
mov ax, word [0x48efe4]
movsx ecx, ax
and ecx, 0xdb34926
mov edx, dword [0x495474]
add edx, ecx
mov dword [0x495474], edx
mov eax, dword [esp + 0x120]
add eax, 0xffffffff
mov dword [esp + 0x120], eax
jmp 0x42a76a
mov eax, 0xdb7d7fa6
mov ecx, dword [0x497918]
mov edx, 0x8e173558
sub edx, ecx
mov ecx, dword [0x497074]
sub ecx, edx
mov dword [0x497074], ecx
mov ecx, esp
lea edx, [esp + 0x128]
mov dword [ecx + 4], edx
mov dword [ecx], 0x497f5c
mov dword [esp + 0x54], eax
mov dword [esp + 0x50], edx
call fcn.00455810
mov ecx, dword [0x4959e4]
xor ecx, 0x7ffdbfed
mov dword [0x4959e4], ecx
mov ecx, esp
mov edx, dword [esp + 0x50]
mov dword [ecx], edx
mov dword [esp + 0x4c], eax
call fcn.0044ddf0
mov dword [esp + 0x124], eax
mov eax, dword [0x494360]
xor eax, 0xa5cfc8c9
mov dword [0x494360], eax
mov eax, dword [0x48daa8]
mov ecx, esp
mov edx, dword [esp + 0x50]
mov dword [ecx], edx
mov dword [ecx + 4], 0
call eax
sub esp, 8
mov ecx, dword [0x49751c]
shl ecx, 9
mov edx, dword [esp + 0x54]
cmp edx, ecx
mov dword [esp + 0x48], eax
jge 0x42a94e
mov eax, 0x9b000e0
mov ecx, dword [0x497c54]
add ecx, 0x394634a9
mov dx, word [0x48ff22]
movsx esi, dx
and ecx, esi
cmp eax, ecx
jge 0x42a949
mov eax, dword [0x497394]
xor eax, 0x89dfd7ec
mov dword [0x497394], eax
jmp 0x42a94e
mov eax, 0x158f5ba8
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x395c
mov dword [esp + 0x44], eax
call fcn.00443650
mov dword [esp + 0x5b4], eax
mov eax, dword [0x4937e4]
add eax, 0x1ac3a70f
mov ecx, dword [0x492d40]
and ecx, eax
mov dword [0x492d40], ecx
mov eax, dword [esp + 0x5b4]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x128]
mov dword [ecx], eax
call fcn.00455820
mov ecx, dword [0x49543c]
xor ecx, 0xf6dfdfff
mov dword [0x49543c], ecx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x38
mov dword [esp + 0x40], eax
call fcn.00443650
mov dword [esp + 0x5b0], eax
mov dx, word [0x48e3c4]
movsx eax, dx
sar eax, 7
sub eax, 0x56725437
mov ecx, dword [esp + 0x44]
cmp ecx, eax
jle 0x42aa10
mov ax, word [0x48efae]
mov cx, ax
imul ecx, ecx, 0x4dd27175
mov ax, cx
mov word [0x48efae], ax
jmp 0x42aa20
mov eax, dword [0x4915f0]
imul eax, eax, 0xf9587559
mov dword [0x4915f0], eax
mov eax, 0x8da8b6d2
mov ecx, dword [esp + 0x5b4]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0x3c], eax
call fcn.00428120
mov eax, dword [0x496d90]
add eax, 0xb247d4b9
mov dword [0x496d90], eax
mov eax, dword [esp + 0x5b0]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x598]
call fcn.00432d90
sub esp, 4
mov ecx, dword [0x493094]
inc ecx
mov dword [0x493094], ecx
or ecx, 0xb1ea0945
mov edx, dword [esp + 0x3c]
cmp edx, ecx
mov dword [esp + 0x38], eax
jge 0x42aaa1
mov eax, dword [0x493360]
imul eax, eax, 0x8e700883
mov dword [0x493360], eax
jmp 0x42aab1
mov eax, dword [0x495414]
imul eax, eax, 0x9f05d2a9
mov dword [0x495414], eax
mov eax, dword [esp + 0x5b0]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0x1f
call fcn.00428120
mov eax, dword [0x494088]
mov ecx, eax
inc ecx
mov dword [0x494088], ecx
imul eax, eax, 0xfd6f737a
cmp eax, 0x76cbae17
jle 0x42aaf6
mov eax, dword [0x4922dc]
xor eax, 0xbbe254c7
mov dword [0x4943a0], eax
lea eax, [esp + 0x598]
lea ecx, [esp + 0x128]
mov dword [esp + 0x34], ecx
mov ecx, eax
call fcn.0043f980
lea ecx, [esp + 0x598]
mov dword [esp + 0x30], eax
call fcn.004218a0
mov ecx, 0x861d9fa
mov dword [esp], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x861d9fa
mov dword [esp + 0x2c], ecx
call fcn.00412870
cmp eax, 0
jne 0x42acf3
mov ax, word [0x48dcde]
mov cx, ax
dec ecx
mov dx, cx
mov word [0x48dcde], dx
movsx ecx, ax
mov esi, dword [0x496c9c]
imul ecx, esi
add ecx, 0xb6dfe665
mov esi, dword [0x4924f8]
xor esi, 0xffffffff
xor esi, 0x8f03517f
cmp ecx, esi
jle 0x42abaa
mov eax, dword [0x493b0c]
mov ecx, dword [0x49271c]
add eax, ecx
mov ecx, dword [0x492760]
imul ecx, eax
mov dword [0x492760], ecx
mov eax, dword [0x48da50]
mov ecx, esp
lea edx, [esp + 0x128]
mov dword [ecx + 4], edx
mov dword [ecx], 0x104
mov dword [esp + 0x28], edx
call eax
sub esp, 8
mov ecx, dword [0x49276c]
mov edx, ecx
dec edx
mov dword [0x49276c], edx
mov edx, 0xef54561d
sub edx, ecx
mov si, word [0x48df56]
mov cx, si
sub ecx, edx
mov si, cx
mov word [0x48df56], si
mov ecx, esp
mov edx, dword [esp + 0x28]
mov dword [ecx + 4], edx
mov dword [ecx], 0x497f5c
mov dword [esp + 0x24], eax
call fcn.00455810
mov ecx, dword [0x496b14]
or ecx, 0x7ea0a998
mov dword [0x496b14], ecx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x395c
mov dword [esp + 0x20], eax
call fcn.00443650
mov dword [esp + 0x5ac], eax
mov eax, dword [0x4923a8]
xor eax, 0xa5c89747
mov dword [0x4923a8], eax
mov eax, dword [esp + 0x5ac]
mov ecx, esp
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x28]
mov dword [ecx], eax
call fcn.00455820
mov ecx, dword [0x49633c]
and ecx, 0x401425
mov edx, dword [0x4928b8]
xor edx, ecx
mov dword [0x4928b8], edx
mov ecx, dword [esp + 0x5ac]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0x1c], eax
call fcn.00428120
mov eax, dword [0x492128]
dec eax
mov dword [0x492128], eax
imul eax, eax, 0x8227521b
or eax, 0xb4ee524e
cmp eax, 0x406ce50
je 0x42acee
mov eax, 0x18bb46f
mov ecx, dword [0x491bd8]
add ecx, 0xef5eac4b
sub ecx, 0xa11901d4
cmp eax, ecx
jne 0x42ace9
mov eax, dword [0x491518]
add eax, 0xd240917c
mov dword [0x491518], eax
jmp 0x42acee
jmp 0x42acf3
mov eax, dword [0x496878]
or eax, 0xbe6f3f5f
mov ecx, dword [0x493a10]
imul ecx, eax
mov dword [0x493a10], ecx
mov eax, dword [0x494588]
inc eax
mov dword [0x494588], eax
imul eax, eax, 0x7e92afa7
and eax, 0xc7f43bb3
cmp eax, 0xe0f0f0a4
je 0x42ad4d
mov eax, dword [0x496a38]
not eax
or eax, 0xbf468518
and eax, 0xbfffe73b
mov ecx, dword [0x493d2c]
imul ecx, eax
mov dword [0x493d2c], ecx
jmp 0x42ad52
mov eax, dword [0x49699c]
and eax, 0x674fce37
mov ecx, dword [0x4926d0]
xor ecx, eax
mov dword [0x4926d0], ecx
mov eax, esp
lea ecx, [esp + 0x128]
mov dword [eax], ecx
mov dword [esp + 0x18], ecx
call fcn.0044ddf0
mov ecx, dword [0x496010]
add ecx, 0xbed4b04d
mov dword [0x496010], ecx
mov ecx, dword [0x48da5c]
mov edx, esp
mov esi, dword [esp + 0x18]
mov dword [edx], esi
mov dword [edx + 4], 2
mov dword [esp + 0x14], eax
call ecx
sub esp, 8
mov ecx, dword [0x4917ac]
add ecx, 0x12a25345
mov dword [0x4917ac], ecx
mov ecx, esp
mov edx, dword [esp + 0x18]
mov dword [ecx], edx
mov dword [ecx + 4], 0x470
mov dword [esp + 0x10], eax
call fcn.00450890
mov eax, dword [0x492ae0]
or eax, 0xdfc20d2b
mov dword [0x492ae0], eax
lea ecx, [esp + 0x598]
call fcn.00449770
add esp, 0x5d8
pop esi
pop edi
pop ebx
ret