Function at 0x10040280
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x98
mov esi, esp
mov eax, dword [ebp + 0x10]
mov dword [esi + 0x84], eax
mov eax, dword [ebp + 0xc]
mov dword [esi + 0x88], eax
mov eax, dword [ebp + 8]
mov dword [esi + 0x8c], eax
mov eax, dword [0x100c3628]
add eax, dword [0x100c362c]
sub eax, 0x632f3942
and eax, 0x20fde713
and eax, 0xc619680b
imul eax, eax, 0x800c348e
add eax, 0x89129cb7
mov ecx, 0x7a3ae12
xor edx, edx
div ecx
and eax, 0xa5d93a08
xor eax, 0x5542ca77
mov ecx, 0x16e32bf3
xor edx, edx
div ecx
and eax, 0xd7e2ced9
add eax, 0xdc0df554
sub eax, 0x2a8128ca
add eax, 0xb973016f
or eax, 0x719ca90e
or eax, 0x4235b260
imul eax, eax, 0x30313afd
mov ecx, 0x12ed76d9
xor edx, edx
div ecx
sub eax, 0xadb59600
and eax, 0x797a8ccf
xor eax, 0xfebcedeb
imul eax, eax, 0x32420878
sub eax, 0xdd27ed0d
xor eax, 0x3ee1a28c
mov ecx, 0xe8a0a7c9
xor edx, edx
div ecx
imul eax, eax, 0xbb82dbeb
mov ecx, 0x46069e3d
xor edx, edx
div ecx
and eax, 0x1f5204cc
or eax, 0xa8fb9ef4
mov ecx, 0xe71fe11b
xor edx, edx
div ecx
and eax, 0x3d7b8e90
and eax, 0x2c5428a7
and eax, 0x55306d70
or eax, 0x82ed4bbf
imul eax, eax, 0x13111354
sub eax, 0xf00657e
imul eax, eax, 0xc36fd926
and eax, 0x3ecb4bc1
or eax, 0x2366fffe
add eax, 0x59ee1a81
mov ecx, 0x2961cd43
xor edx, edx
div ecx
add eax, 0x6fefd181
or eax, 0xcf252d2f
add eax, 0x49b250ba
sub eax, 0x4c93636d
and eax, 0x3c07109f
or eax, 0x944287ac
sub eax, 0x5148765e
or eax, 0x6e443f46
and eax, 0x965e4a87
and eax, 0xae1f73a6
sub eax, 0x3d1c6ddd
or eax, 0x4b23c22e
add eax, 0xbb7cd5fb
sub eax, 0xfe281d7c
imul eax, eax, 0xb824796e
imul eax, eax, 0xa9053756
imul eax, eax, 0xb982cf52
add eax, 0x59ee0102
sub eax, 0xb914d2ef
mov ecx, 0xe4a5c468
xor edx, edx
div ecx
and eax, 0x6e970e10
mov ecx, 0x3127317d
xor edx, edx
div ecx
and eax, 0xb245bcaf
imul eax, eax, 0xbb6faa4d
imul eax, eax, 0x4010555
imul eax, eax, 0xe87e385b
imul eax, eax, 0x41eb71dc
add eax, 0x45e00c09
xor eax, 0x53555dca
or eax, 0x6009871c
and eax, 0x8c79124
xor eax, 0xa2cc2ba2
cmp eax, 0x3ed8b62d
jbe 0x1004162e
mov eax, 0x254936c3
mov dword [esi + 0x80], eax
push eax
mov eax, esp
mov dword [esi + 0x30], eax
sub esp, 8
mov ecx, esp
and ecx, 0xfffffff8
mov dword [esi + 0x74], ecx
mov esp, ecx
push eax
mov eax, esp
mov dword [esi + 0x58], eax
mov dword [esi + 0x34], eax
push eax
mov eax, esp
mov dword [esi + 0x5c], eax
push eax
mov eax, esp
mov dword [esi + 0x60], eax
push eax
mov eax, esp
mov dword [esi + 0x64], eax
push eax
mov eax, esp
mov dword [esi + 0x68], eax
push eax
mov edx, esp
push eax
mov eax, esp
mov dword [esi + 0x6c], eax
mov dword [esi + 0x38], eax
push eax
mov ebx, esp
mov eax, ebx
mov dword [esi + 0x3c], eax
push eax
mov eax, esp
mov dword [esi + 0x70], eax
mov dword [esi + 0x40], eax
push eax
mov edi, esp
mov eax, edi
mov dword [esi + 0x44], eax
push eax
mov eax, esp
mov dword [esi + 0x78], eax
push eax
mov eax, esp
mov dword [esi + 0x7c], eax
push eax
mov eax, esp
mov dword [esi + 0x48], eax
push eax
mov eax, esp
mov dword [esi + 0x4c], eax
push eax
mov eax, esp
mov dword [esi + 0x50], eax
push eax
mov eax, esp
mov dword [esi + 0x54], eax
mov eax, dword [esi + 0x84]
mov dword [ecx + 4], eax
mov eax, dword [esi + 0x88]
mov dword [ecx], eax
mov eax, dword [esi + 0x58]
mov ecx, dword [esi + 0x8c]
mov dword [eax], ecx
mov ecx, dword [esi + 0x5c]
mov eax, dword [esi + 0x74]
mov eax, dword [eax]
mov dword [ecx], eax
mov eax, dword [esi + 0x74]
mov eax, dword [eax]
mov ecx, dword [ecx]
mov ecx, dword [ecx + 0x3c]
add eax, ecx
mov ecx, dword [esi + 0x60]
mov dword [ecx], eax
mov eax, dword [esi + 0x64]
mov ecx, dword [ecx]
add ecx, 0x78
mov dword [eax], ecx
mov ecx, dword [esi + 0x68]
mov eax, dword [eax]
mov eax, dword [eax]
mov dword [ecx], eax
mov eax, dword [esi + 0x74]
mov eax, dword [eax]
mov ecx, dword [ecx]
add eax, ecx
mov ecx, dword [esi + 0x6c]
mov dword [edx], eax
mov eax, dword [edx]
mov eax, dword [eax + 0x14]
mov dword [ecx], eax
mov eax, dword [esi + 0x70]
mov ecx, dword [edx]
mov ecx, dword [ecx + 0x18]
mov dword [ebx], ecx
mov ecx, dword [esi + 0x74]
mov ebx, dword [ecx]
mov ecx, dword [edx]
mov ecx, dword [ecx + 0x1c]
add ebx, ecx
mov ecx, dword [esi + 0x74]
mov dword [eax], ebx
mov ebx, dword [ecx]
mov eax, dword [edx]
mov eax, dword [eax + 0x20]
add ebx, eax
mov eax, dword [esi + 0x78]
mov dword [edi], ebx
mov ecx, dword [ecx]
mov edx, dword [edx]
mov edx, dword [edx + 0x24]
add ecx, edx
mov dword [eax], ecx
sub esp, 8
mov dword [esp], 0x10
mov dword [esp + 4], 0x14
call fcn.1000ed70
mov ecx, dword [esi + 0x7c]
add esp, 8
mov eax, dword [esi + 0x80]
mov dword [ecx], 0
cmp eax, 0xef1fc027
ja 0x1004162e
jmp 0x100405af
mov eax, dword [0x100c3638]
and eax, dword [0x100c363c]
xor eax, 0xa2d0936d
and eax, 0xf48d838b
and eax, 0xdfe5e074
xor eax, 0x4b5c7861
add eax, 0x6ac331d4
add eax, 0x1d0604c5
or eax, 0x24fbb650
xor eax, 0x7c480e51
and eax, 0x13bdd932
xor eax, 0x9a121ad8
or eax, 0xb507556c
mov ecx, 0x3aee792d
xor edx, edx
div ecx
or eax, 0x3189795e
imul eax, eax, 0xe876fcb2
sub eax, 0x25072f12
sub eax, 0x6a4a511
imul eax, eax, 0x5a90a8f
imul eax, eax, 0x4c7589
mov ecx, 0xdf5619e4
xor edx, edx
div ecx
add eax, 0xbc77e24e
and eax, 0xc375abc8
or eax, 0xa83b1864
mov ecx, 0xebf26750
xor edx, edx
div ecx
or eax, 0x8189c093
mov ecx, 0x632c4003
xor edx, edx
div ecx
and eax, 0x4d066594
sub eax, 0x34bfde44
sub eax, 0x32ff2ce8
or eax, 0x5fbf490e
or eax, 0xf32fe91a
imul eax, eax, 0x2c75b261
and eax, 0x674b1098
and eax, 0xa6d90cd8
or eax, 0xfc8e0467
mov ecx, 0xad957aa4
xor edx, edx
div ecx
sub eax, 0x972a561d
sub eax, 0x89bf19d6
and eax, 0x78609d73
add eax, 0xc5ff2300
imul eax, eax, 0x325440cb
and eax, 0x4509444b
or eax, 0x5d1862df
sub eax, 0xd0ada2dc
xor eax, 0x199c79a5
imul eax, eax, 0x5e77ef2
sub eax, 0xf1478e57
or eax, 0xf3c667de
sub eax, 0x2531e132
imul eax, eax, 0xaf35685e
imul eax, eax, 0xd80a3be4
mov ecx, 0x61c0e4dd
xor edx, edx
div ecx
add eax, 0x63704a2f
imul eax, eax, 0x4ecc96ee
xor eax, 0x5fb90d01
and eax, 0xf5ebeac8
mov ecx, 0xf6af58d7
xor edx, edx
div ecx
mov ecx, 0x4388168b
xor edx, edx
div ecx
sub eax, 0x4e64c429
or eax, 0xfe61b5d4
and eax, 0x3df6e3c3
mov ecx, 0x1c6275a1
xor edx, edx
div ecx
mov ecx, 0xc881d649
xor edx, edx
div ecx
and eax, 0x5635f0f4
mov ecx, 0x10c29bd8
xor edx, edx
div ecx
mov ecx, 0x421a30ba
xor edx, edx
div ecx
imul eax, eax, 0xa25f29aa
sub eax, 0x7320493a
imul eax, eax, 0x790cabfe
and eax, 0xad154999
sub eax, 0x1731142d
xor eax, 0x65ec5c2
sub eax, 0x22a68d82
cmp eax, 0x6b9465ff
jbe 0x1004173e
mov ecx, dword [esi + 0x7c]
mov eax, dword [0x100c3640]
or eax, dword [0x100c3644]
sub eax, 0x4f0ffa67
add eax, 0xedb0a62f
sub eax, 0xc02f9bd9
imul eax, eax, 0xdeed47cd
mov edi, 0x211d3d39
xor edx, edx
div edi
and eax, 0xd8f4c442
or eax, 0xeb21d7f5
sub eax, 0xa37550c5
or eax, 0x331c2254
sub eax, 0x150f3d5
xor eax, 0x5647f43d
add eax, 0xb3e75da2
and eax, 0x5bcb6218
or eax, 0xe81a5562
sub eax, 0x659178b8
or eax, 0x19e97849
imul eax, eax, 0xfbbc120f
add eax, 0xa35d919b
and eax, 0x52a1936f
or eax, 0x399571c1
or eax, 0xac0ee4ce
xor eax, 0x5950aee1
add eax, 0x40ef02f6
sub eax, 0x94a1c8f7
or eax, 0xa14a1d8c
sub eax, 0xe3891f4b
or eax, 0x7dfc9d92
and eax, 0xfff8e899
add eax, 0x202e06c9
sub eax, 0x419c572b
and eax, 0x8b3cda94
add eax, 0xfedbe45
or eax, 0x32f803c7
imul eax, eax, 0x1e4a1fcf
or eax, 0x177acb6c
xor eax, 0xaed4f255
mov edi, 0xc62f6c7
xor edx, edx
div edi
and eax, 0xafa31323
xor eax, 0xf797496d
and eax, 0x57843273
add eax, 0x97a99d7
and eax, 0xb1af89e6
add eax, 0xdf47e389
or eax, 0xe3b069d6
and eax, 0x11bd4d56
mov edi, 0x1a373019
xor edx, edx
div edi
mov edi, 0xb52c9369
xor edx, edx
div edi
mov edx, dword [esi + 0x38]
imul eax, eax, 0x22480fc
add eax, 0x450b202d
imul eax, eax, 0x6f35189
and eax, 0x8e7ac88
sub eax, 0xf892704f
add eax, 0xfc399626
imul eax, eax, 0x3df7b44
xor eax, 0x8324c874
sub eax, 0x354e146b
or eax, 0x308b92a9
sub eax, 0x8532324b
sub eax, 0x356fc274
sub eax, 0x20838c10
imul eax, eax, 0xb9c698cb
xor eax, 0xe5078a83
add eax, 0xa4f7ffb9
and eax, 0xd86ab405
xor eax, 0xecc84cc6
xor eax, 0xb36cb870
or eax, 0xbb1b3c3e
or eax, 0x31909e93
or eax, 0x32f817ca
xor eax, 0x646e589c
sub eax, 0x45b105b0
sub eax, 0xef5892c
mov ecx, dword [ecx]
cmp ecx, dword [edx]
setb cl
mov byte [esi + 0x2f], cl
cmp eax, 0x10c97b32
jb 0x10040768
mov al, byte [esi + 0x2f]
test al, 1
jne 0x1004091d
jmp 0x100412b1
mov eax, dword [0x100c3648]
xor edx, edx
div dword [0x100c364c]
and eax, 0x4ed01fed
imul eax, eax, 0xc4d4ee89
imul eax, eax, 0x1d3d6db7
xor eax, 0x4c3537d7
xor eax, 0x10419fd4
or eax, 0x421f03dc
and eax, 0x9ce8e6f5
imul eax, eax, 0xcafdb2e
or eax, 0xd932591e
and eax, 0x11632c94
or eax, 0x2f8a67cb
and eax, 0xb0b3d3a8
sub eax, 0x2c5703a9
sub eax, 0xe7a2a012
sub eax, 0xe68f89b3
mov ecx, 0xf1188da
xor edx, edx
div ecx
imul eax, eax, 0x844e16b9
mov ecx, 0xbb201f42
xor edx, edx
div ecx
or eax, 0x10c47a4
imul eax, eax, 0x7f08e54d
and eax, 0xc1a4d8df
sub eax, 0xe8519b89
xor eax, 0x72f79412
and eax, 0x93a9d4bc
mov ecx, 0x96219b11
xor edx, edx
div ecx
or eax, 0xe08d6a4b
and eax, 0x88043d66
sub eax, 0xf056b655
add eax, 0x38bdbd47
sub eax, 0x9d475ebe
and eax, 0xe981859
mov ecx, 0xa72f808b
xor edx, edx
div ecx
add eax, 0xa0e8ed9
add eax, 0x54e0a526
or eax, 0x40bb28d3
sub eax, 0xce8d713c
sub eax, 0x98164ecb
add eax, 0xf4f9c853
or eax, 0x3784e861
xor eax, 0x60126978
imul eax, eax, 0xe850783
xor eax, 0x4f679b34
mov ecx, 0x44bbf470
xor edx, edx
div ecx
add eax, 0x12373143
add eax, 0xebe29e68
and eax, 0x8047021c
xor eax, 0x88781293
and eax, 0xb18894e1
add eax, 0x71a7f559
imul eax, eax, 0x998016e3
sub eax, 0xe4802f92
sub eax, 0xb6b7f8ab
mov ecx, 0x9057c248
xor edx, edx
div ecx
imul eax, eax, 0x9ad3e145
imul eax, eax, 0x659d8730
sub eax, 0xff652c75
mov ecx, 0x784506b0
xor edx, edx
div ecx
and eax, 0x9bbbcaed
xor eax, 0xbe808afe
or eax, 0x9a443262
add eax, 0x9c7f8ebb
and eax, 0xfb618977
xor eax, 0xa085c5dc
xor eax, 0x748adcde
and eax, 0x5d003d38
mov ecx, 0x26e327dc
xor edx, edx
div ecx
imul eax, eax, 0x60a9cae8
and eax, 0x6631c28e
xor eax, 0x37b74fd8
and eax, 0xc9970aaf
sub eax, 0x258c0843
mov ecx, 0x3f6a9c00
xor edx, edx
div ecx
cmp eax, 0x48da62b1
ja 0x10041743
mov ecx, dword [esi + 0x40]
mov eax, dword [0x100c3650]
sub eax, dword [0x100c3654]
or eax, 0x52ab5f1c
or eax, 0x7eb7f256
xor eax, 0x6ec3c2c7
imul eax, eax, 0xec75d58f
and eax, 0x1bbddc9e
xor eax, 0x44b08f37
xor eax, 0x79e8f5a4
xor eax, 0x35ca4135
or eax, 0x75264e8a
and eax, 0xcba4495e
and eax, 0x612ae81b
xor eax, 0xfef53ea
or eax, 0xf8da82c8
or eax, 0x75b2dc68
imul eax, eax, 0xf22cb03d
imul eax, eax, 0x9134956f
xor eax, 0x97ba9ebf
add eax, 0x4f389f1a
sub eax, 0xcee32bbb
imul eax, eax, 0x895ed139
imul eax, eax, 0x8aa3c38c
xor eax, 0xa4ceebb1
add eax, 0x6022fd71
xor eax, 0x25bee7ca
mov edi, 0x100b715c
xor edx, edx
div edi
imul eax, eax, 0xb81c310b
or eax, 0xa18371ea
xor eax, 0x47af7a22
add eax, 0x32a84a5c
add eax, 0xcbc360d
mov edi, 0x91c37ce3
xor edx, edx
div edi
imul eax, eax, 0x8cb7c09c
sub eax, 0x62db42c2
imul eax, eax, 0x65dd0650
xor eax, 0x6ea6f4fa
sub eax, 0x5280d8ab
add eax, 0x207b7516
sub eax, 0x9688f45
and eax, 0x52c08afa
sub eax, 0x9c89f758
or eax, 0xf8fbca57
or eax, 0x10db8dd
imul eax, eax, 0x5fa1d353
and eax, 0x26442f88
imul eax, eax, 0x5a0a3be5
add eax, 0x75d8e142
sub eax, 0x6e1d06ef
mov edi, 0x263d5678
xor edx, edx
div edi
and eax, 0xc6e1b031
sub eax, 0x97e5b9e3
sub eax, 0xe3fc88fe
xor eax, 0xac17bfaa
add eax, 0xe4474993
add eax, 0xea4ae36d
xor eax, 0x8677db7
mov edi, 0x3a9b4c80
xor edx, edx
div edi
mov edi, 0x41d30bfe
xor edx, edx
div edi
or eax, 0x58d808ef
mov edi, 0x3a6c4c3
xor edx, edx
div edi
imul eax, eax, 0xfd4c29b3
mov edi, 0xc26e575c
xor edx, edx
div edi
sub eax, 0x77558870
mov edi, 0x9c5b78a5
xor edx, edx
div edi
imul eax, eax, 0x98fd76a
mov edi, 0xc9c9ecdf
xor edx, edx
div edi
mov edx, dword [esi + 0x7c]
sub eax, 0xa26c68fd
imul eax, eax, 0x36dd9c6f
add eax, 0x899b1520
and eax, 0xa27e38f6
and eax, 0x64a3eff1
add eax, 0xc7b4a26b
xor eax, 0x7b0ba56
mov ecx, dword [ecx]
mov edx, dword [edx]
cmp dword [ecx + edx*4], 0
setne cl
mov byte [esi + 0x2e], cl
cmp eax, 0x3ccb6166
jbe 0x10041743
mov al, byte [esi + 0x2e]
test al, 1
jne 0x10040ca3
jmp 0x10040c9e
jmp 0x10040f38
mov eax, dword [esi + 0x4c]
mov ecx, dword [esi + 0x48]
mov edi, dword [esi + 0x7c]
mov edx, dword [esi + 0x40]
mov edx, dword [edx]
mov edi, dword [edi]
mov edx, dword [edx + edi*4]
mov dword [ecx], edx
mov dword [eax], 0
mov ecx, dword [esi + 0x3c]
mov eax, dword [esi + 0x4c]
mov eax, dword [eax]
cmp eax, dword [ecx]
jae 0x10040f33
mov ecx, dword [esi + 0x7c]
mov edx, dword [esi + 0x4c]
mov eax, dword [esi + 0x78]
mov eax, dword [eax]
mov edx, dword [edx]
movzx eax, word [eax + edx*2]
cmp eax, dword [ecx]
jne 0x10040f1f
mov eax, dword [0x100c3658]
or eax, dword [0x100c365c]
sub eax, 0x695088e5
or eax, 0xefbed85
add eax, 0x64ecdf63
or eax, 0xe525856a
or eax, 0xf621e708
or eax, 0x9c73d01a
and eax, 0xc34225c5
add eax, 0xc39fd5ef
and eax, 0x322ffa59
and eax, 0x5a6e9e7e
imul eax, eax, 0xfa847859
mov ecx, 0x344ede9c
xor edx, edx
div ecx
or eax, 0x19482cf8
add eax, 0x6999939
xor eax, 0xb8ae55e5
add eax, 0xbc5cc1f9
or eax, 0x689ea5fc
and eax, 0x17b9cba
mov ecx, 0xe876a794
xor edx, edx
div ecx
or eax, 0xb753f9c7
add eax, 0x8b81896a
xor eax, 0xbf4e67a
or eax, 0x204e5326
add eax, 0xefca2800
add eax, 0x5a82eb6f
and eax, 0x5558adf2
and eax, 0x62208669
add eax, 0x2cd8c6af
sub eax, 0xce072f27
and eax, 0x7caec0a2
xor eax, 0x796c16ec
sub eax, 0xc70573bf
add eax, 0xb5a7ce26
mov ecx, 0x14ecc69a
xor edx, edx
div ecx
or eax, 0x287d4241
xor eax, 0x138329ef
mov ecx, 0xfccca9b9
xor edx, edx
div ecx
and eax, 0x283b3e30
sub eax, 0xfa21472c
add eax, 0x41727223
add eax, 0x6e4180ac
imul eax, eax, 0x68c6db5e
add eax, 0xd0ecdf10
xor eax, 0x254ee9e8
and eax, 0x1f15bc45
sub eax, 0x1a6cb1cd
sub eax, 0xe544b764
imul eax, eax, 0xd4d21c58
and eax, 0x5eb9ae90
mov ecx, 0x2dcda0b2
xor edx, edx
div ecx
add eax, 0xb07f753b
and eax, 0xddd81246
mov ecx, 0x75f6bc43
xor edx, edx
div ecx
add eax, 0x4ac75a8
sub eax, 0xef264652
and eax, 0x7fe45702
imul eax, eax, 0xfe8f79b
imul eax, eax, 0x8d401a4e
xor eax, 0x85aad0dc
sub eax, 0x16e7bd10
xor eax, 0x1973ec9c
add eax, 0xce66089f
sub eax, 0xd444ff0e
add eax, 0xecf6bc77
xor eax, 0xd71a8b3d
add eax, 0x55807f47
sub eax, 0x5212c626
add eax, 0x64e42a65
mov ecx, 0x12f12777
xor edx, edx
div ecx
imul eax, eax, 0xa7ddbdf4
add eax, 0x233f54c0
xor eax, 0xb7927a9c
cmp eax, 0x57d87939
je 0x10041748
mov edi, dword [esi + 0x50]
mov ebx, dword [esi + 0x44]
xor eax, eax
mov dword [esi + 0x28], eax
sub esp, 8
mov eax, esp
mov dword [eax + 4], 3
mov dword [eax], 2
call fcn.100088a0
mov edx, dword [esi + 0x74]
mov ecx, dword [esi + 0x34]
add esp, 8
mov eax, dword [esi + 0x4c]
mov ebx, dword [ebx]
mov eax, dword [eax]
mov ebx, dword [ebx + eax*4]
mov eax, dword [esi + 0x54]
mov dword [edi], ebx
mov edx, dword [edx]
add edx, dword [edi]
mov dword [eax], edx
mov edx, dword [ecx]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.1008cb20
add esp, 8
mov ecx, eax
mov eax, dword [esi + 0x28]
cmp ecx, 0
setne cl
mov byte [esi + 0x2d], cl
cmp eax, 0x58221602
ja 0x10041748
mov al, byte [esi + 0x2d]
test al, 1
jne 0x10040f1a
jmp 0x10040f06
mov eax, dword [esi + 0x30]
mov edx, dword [esi + 0x48]
mov ecx, dword [esi + 0x74]
mov ecx, dword [ecx]
add ecx, dword [edx]
mov dword [eax], ecx
jmp 0x10041621
jmp 0x10040f1f
jmp 0x10040f24
mov eax, dword [esi + 0x4c]
mov ecx, dword [eax]
add ecx, 1
mov dword [eax], ecx
jmp 0x10040cbe
jmp 0x10040f38
mov eax, dword [0x100c3668]
xor edx, edx
div dword [0x100c366c]
or eax, 0xe4927d6a
and eax, 0xf80ce441
add eax, 0x7f423294
and eax, 0xc56dc8c9
xor eax, 0x793ca120
xor eax, 0x5200f67f
sub eax, 0x5a8653e3
or eax, 0x80a0e5c5
mov ecx, 0x684878da
xor edx, edx
div ecx
or eax, 0x88b99b07
mov ecx, 0xece7aad5
xor edx, edx
div ecx
add eax, 0xc1471c0f
and eax, 0x4ba825aa
and eax, 0x678fb56a
sub eax, 0xda7a5337
mov ecx, 0x664a3fe0
xor edx, edx
div ecx
or eax, 0x9cf08ae
and eax, 0xef8c2163
and eax, 0x547dfc67
add eax, 0x1d725995
and eax, 0x3262f6df
and eax, 0x850c8f83
xor eax, 0x56892613
xor eax, 0x23618d9c
sub eax, 0xf0143ccd
xor eax, 0x3aec94a
xor eax, 0x9e644ff8
mov ecx, 0xe065cef6
xor edx, edx
div ecx
and eax, 0xa5bbb613
imul eax, eax, 0x4400b769
add eax, 0xd2d246d7
add eax, 0xfe9a8a38
mov ecx, 0xc1087c29
xor edx, edx
div ecx
add eax, 0x21a0fcdc
and eax, 0xc444edf8
and eax, 0x5ee3cdbf
sub eax, 0xa43308f
and eax, 0x15164a22
or eax, 0x1522c513
imul eax, eax, 0x69882148
mov ecx, 0x538a4f0a
xor edx, edx
div ecx
add eax, 0x6d1aa504
and eax, 0x74da59fe
or eax, 0x3e4cded
xor eax, 0x284c9560
xor eax, 0x6e295df1
mov ecx, 0xd99ff908
xor edx, edx
div ecx
sub eax, 0xffe96b0c
add eax, 0xd6785c3d
imul eax, eax, 0xb0b2e81c
sub eax, 0x86d6b34c
mov ecx, 0xf3e84481
xor edx, edx
div ecx
or eax, 0x7668c12d
xor eax, 0x7f751533
sub eax, 0x46503b1d
imul eax, eax, 0xe15cec49
and eax, 0x30760b26
add eax, 0x1320e8cf
or eax, 0x3540a48f
add eax, 0x61080b3
and eax, 0x47399df8
add eax, 0xe42c1196
mov ecx, 0xc46712f1
xor edx, edx
div ecx
imul eax, eax, 0x1bac5571
or eax, 0x6a5376a9
imul eax, eax, 0x3d1f978a
imul eax, eax, 0x4bd29ed2
sub eax, 0xe0a9793f
add eax, 0x4bf360fc
add eax, 0xf6ab3c3b
and eax, 0x582e45e2
xor eax, 0x7fa50df6
cmp eax, 0x2628722f
jb 0x100417a0
mov ecx, dword [esi + 0x7c]
mov eax, dword [0x100c3670]
sub eax, dword [0x100c3674]
xor eax, 0x75f735ec
sub eax, 0xa50daa2
mov edi, 0xde3b5cc7
xor edx, edx
div edi
xor eax, 0xe117cefa
and eax, 0xfb6a8d73
add eax, 0x93b4ba79
add eax, 0x34668f64
mov edi, 0x5b510829
xor edx, edx
div edi
mov edi, 0x32a4aa3b
xor edx, edx
div edi
or eax, 0x292f9fbd
add eax, 0xd609f45c
and eax, 0x2c76db6c
sub eax, 0xe9fe2c31
add eax, 0x91ef553a
mov edi, 0xfe3bb70f
xor edx, edx
div edi
add eax, 0x29d5fc63
and eax, 0xceabd567
sub eax, 0xd97d1f10
or eax, 0xbd41090c
or eax, 0x4fe3c12c
and eax, 0xf3735511
and eax, 0xa7442acf
add eax, 0xb0593a
imul eax, eax, 0xd9ba8c0a
xor eax, 0xa63143be
mov edi, 0x2631b768
xor edx, edx
div edi
sub eax, 0xb6d37469
or eax, 0x375f4c20
and eax, 0x7588d1be
or eax, 0x8d9e1a1a
mov edi, 0x61de20f1
xor edx, edx
div edi
add eax, 0x202826dc
xor eax, 0xcc8bdb76
sub eax, 0x66c70e3
mov edi, 0x46e4085e
xor edx, edx
div edi
xor eax, 0xf7d0a245
mov edi, 0x6d7e1ae1
xor edx, edx
div edi
mov edi, 0x506cdeb
xor edx, edx
div edi
imul eax, eax, 0x90af1412
imul eax, eax, 0xbdda3fa0
add eax, 0x877eeb87
or eax, 0x87fb7e9c
add eax, 0xb339ac00
add eax, 0x666503d6
sub eax, 0x2179b4c6
xor eax, 0x35babd13
xor eax, 0x594c90c2
or eax, 0xf4d0d833
mov edi, 0x7245023c
xor edx, edx
div edi
sub eax, 0xe219b9fe
mov edi, 0xc896d290
xor edx, edx
div edi
mov edi, 0xa0fe113
xor edx, edx
div edi
add eax, 0xfdba0c06
mov edi, 0x1ae4ed23
xor edx, edx
div edi
mov edi, 0x6d591f12
xor edx, edx
div edi
add eax, 0xe96ec481
mov edi, 0xfde2a489
xor edx, edx
div edi
or eax, 0x5220a773
and eax, 0x874f9755
add eax, 0xd8e5a5b4
xor eax, 0x3b6de4b3
or eax, 0x12514e29
xor eax, 0x7706507e
add eax, 0xe5634abf
xor eax, 0xdbe67bd
sub eax, 0x8f7b8117
imul eax, eax, 0xad836c60
add eax, 0x7ef5f63
or eax, 0x8ad9008e
or eax, 0xd57ef921
imul eax, eax, 0xad3c7c52
or eax, 0xc9d67d60
mov edx, dword [ecx]
add edx, 1
mov dword [ecx], edx
cmp eax, 0xeb01bc5
je 0x100410e3
jmp 0x100405af
mov eax, dword [0x100c3678]
and eax, dword [0x100c367c]
add eax, 0x4ca716d3
imul eax, eax, 0x77e916d1
sub eax, 0xe5a2716c
or eax, 0xfd502806
sub eax, 0xe2d04354
and eax, 0x6a74b3de
and eax, 0x5f426913
or eax, 0x474aa0fd
mov ecx, 0x14d5ab56
xor edx, edx
div ecx
mov ecx, 0x96a9b
xor edx, edx
div ecx
sub eax, 0x166b2eaf
add eax, 0x935c5541
and eax, 0xb1572b3d
imul eax, eax, 0xbfc72865
xor eax, 0xb2da10e2
sub eax, 0x2b0f9dd7
xor eax, 0x3fa50238
xor eax, 0x3e664563
and eax, 0xc754170
xor eax, 0x9692235d
sub eax, 0xab752092
or eax, 0x61dcc944
or eax, 0x4ed2ecb8
mov ecx, 0xffae0b2b
xor edx, edx
div ecx
and eax, 0xddcf1da
add eax, 0x5badcf97
add eax, 0x607b2ced
add eax, 0xc0d9e32b
xor eax, 0x4d97926a
add eax, 0x71bb6d7c
add eax, 0x70c093e
and eax, 0xab28933
mov ecx, 0x97e297c9
xor edx, edx
div ecx
or eax, 0x49964a10
mov ecx, 0xb28e96dc
xor edx, edx
div ecx
mov ecx, 0x24e59da9
xor edx, edx
div ecx
mov ecx, 0xd58eb816
xor edx, edx
div ecx
or eax, 0xf44c191a
or eax, 0x10620183
or eax, 0x892a754f
and eax, 0x3356f7b0
sub eax, 0x2083b100
imul eax, eax, 0x1ed0f565
imul eax, eax, 0xb93e009f
or eax, 0xb06a574f
add eax, 0xf8f38548
add eax, 0x4f8d453a
and eax, 0x45360c5d
sub eax, 0xb391835f
and eax, 0xa66a3fc
imul eax, eax, 0x471b8583
or eax, 0xb8439134
and eax, 0xc3a269a7
mov ecx, 0xb9a53a1a
xor edx, edx
div ecx
mov ecx, 0x2fe1ac1f
xor edx, edx
div ecx
mov ecx, 0x7482c62d
xor edx, edx
div ecx
imul eax, eax, 0xe10a9268
and eax, 0xc2dbddfe
mov ecx, 0x60480ea7
xor edx, edx
div ecx
add eax, 0x642d6e7
sub eax, 0x5c337d0e
sub eax, 0x66d922f
and eax, 0x65dbace7
or eax, 0xad40d57
xor eax, 0xebf54c12
sub eax, 0xd79ed55c
mov ecx, 0x102b5666
xor edx, edx
div ecx
and eax, 0x7363e62a
xor eax, 0xb4c7b525
sub eax, 0x50a6aacb
add eax, 0xa32f1223
and eax, 0x6235e4fc
cmp eax, 0xed6172a5
je 0x100417af
mov ecx, dword [esi + 0x30]
mov eax, dword [0x100c3680]
imul eax, dword [0x100c3684]
or eax, 0x9103fcf8
imul eax, eax, 0xa76f46c9
sub eax, 0xaa82e32c
mov edi, 0xaa671726
xor edx, edx
div edi
xor eax, 0xc1897c69
imul eax, eax, 0x1f0d5c7e
xor eax, 0xc5bdd855
or eax, 0xb0a09e62
mov edi, 0xf30df215
xor edx, edx
div edi
sub eax, 0x713ba7ab
add eax, 0xe0895997
add eax, 0x42bb370c
imul eax, eax, 0x5fb733af
and eax, 0x56eb2ca1
xor eax, 0xb61ea65e
add eax, 0x787a08c2
sub eax, 0x9d5199cb
and eax, 0x53db74b5
xor eax, 0xf14d17c6
sub eax, 0xfc970006
imul eax, eax, 0xe90001ba
and eax, 0x13523a33
or eax, 0x5d2b3585
imul eax, eax, 0xeea313e3
and eax, 0x4177d70f
mov edi, 0x6588c093
xor edx, edx
div edi
and eax, 0x14b7534b
sub eax, 0x76dc2f54
sub eax, 0x70229589
sub eax, 0x1e4210b
or eax, 0xa66234b3
mov edi, 0x518e2e89
xor edx, edx
div edi
imul eax, eax, 0xab7f95f4
and eax, 0x48e38101
sub eax, 0x37f7c188
mov edi, 0x40b6be08
xor edx, edx
div edi
sub eax, 0x26131fbe
sub eax, 0xdfe182b0
imul eax, eax, 0xfe1dd9f
add eax, 0xe4930129
or eax, 0xe78ed848
or eax, 0x885391ef
xor eax, 0x146f90e4
and eax, 0xdae2e158
or eax, 0x5301723e
or eax, 0x8f94f89f
add eax, 0x96eb2c6f
mov edi, 0x21ca8459
xor edx, edx
div edi
imul eax, eax, 0x475000d6
add eax, 0x8b846b3e
mov edi, 0x32a5876c
xor edx, edx
div edi
add eax, 0x50b1022b
imul eax, eax, 0xe2ec11f3
mov edi, 0x1109fdc2
xor edx, edx
div edi
sub eax, 0x6f33964d
add eax, 0xf12fc58
add eax, 0xf7173524
add eax, 0x8ec97ee3
and eax, 0xa65b1790
xor eax, 0x14d4d874
imul eax, eax, 0xdc8d1d44
or eax, 0x627bf294
imul eax, eax, 0x1f73e40f
sub eax, 0x3880c88c
sub eax, 0x946051a3
add eax, 0x16dbcd67
sub eax, 0x9c4f5b4f
and eax, 0xb039ab14
sub eax, 0x3c327460
mov edi, 0xf934c70e
xor edx, edx
div edi
xor eax, 0x1ae68bb1
or eax, 0x5700fdfa
mov dword [ecx], 0
cmp eax, 0xd794dcbf
ja 0x10041465
jmp 0x10041621
mov eax, dword [esi + 0x30]
mov eax, dword [eax]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, dword [esi + 0x84]
push eax
sub esp, 8
mov eax, esp
and eax, 0xfffffff8
mov dword [esi + 0x20], eax
mov esp, eax
push eax
mov eax, esp
mov dword [esi], eax
push eax
mov eax, esp
mov dword [esi + 4], eax
push eax
mov eax, esp
mov dword [esi + 8], eax
push eax
mov eax, esp
mov dword [esi + 0xc], eax
push eax
mov eax, esp
mov dword [esi + 0x10], eax
push eax
mov edx, esp
push eax
mov eax, esp
mov dword [esi + 0x14], eax
push eax
mov eax, esp
mov dword [esi + 0x18], eax
push eax
mov ebx, esp
push eax
mov edi, esp
push eax
mov eax, esp
mov dword [esi + 0x1c], eax
push eax
mov eax, esp
mov dword [esi + 0x24], eax
push eax
push eax
push eax
push eax
mov eax, dword [esi + 0x20]
mov dword [eax + 4], ecx
mov ecx, dword [esi + 0x88]
mov dword [eax], ecx
mov ecx, dword [esi]
mov eax, dword [esi + 0x8c]
mov dword [ecx], eax
mov eax, dword [esi + 4]
mov ecx, dword [esi + 0x20]
mov ecx, dword [ecx]
mov dword [eax], ecx
mov ecx, dword [esi + 0x20]
mov ecx, dword [ecx]
mov eax, dword [eax]
mov eax, dword [eax + 0x3c]
add ecx, eax
mov eax, dword [esi + 8]
mov dword [eax], ecx
mov ecx, dword [esi + 0xc]
mov eax, dword [eax]
add eax, 0x78
mov dword [ecx], eax
mov eax, dword [esi + 0x10]
mov ecx, dword [ecx]
mov ecx, dword [ecx]
mov dword [eax], ecx
mov ecx, dword [esi + 0x20]
mov ecx, dword [ecx]
mov eax, dword [eax]
add ecx, eax
mov eax, dword [esi + 0x14]
mov dword [edx], ecx
mov ecx, dword [edx]
mov ecx, dword [ecx + 0x14]
mov dword [eax], ecx
mov ecx, dword [esi + 0x18]
mov eax, dword [edx]
mov eax, dword [eax + 0x18]
mov dword [ecx], eax
mov eax, dword [esi + 0x20]
mov ecx, dword [eax]
mov eax, dword [edx]
mov eax, dword [eax + 0x1c]
add ecx, eax
mov eax, dword [esi + 0x1c]
mov dword [ebx], ecx
mov ecx, dword [esi + 0x20]
mov ebx, dword [ecx]
mov ecx, dword [edx]
mov ecx, dword [ecx + 0x20]
add ebx, ecx
mov ecx, dword [esi + 0x20]
mov dword [edi], ebx
mov ecx, dword [ecx]
mov edx, dword [edx]
mov edx, dword [edx + 0x24]
add ecx, edx
mov dword [eax], ecx
sub esp, 8
mov dword [esp], 0x10
mov dword [esp + 4], 0x14
call fcn.1000ed70
add esp, 8
mov eax, dword [esi + 0x24]
mov dword [eax], 0
jmp 0x1004045b
jmp 0x10040768
jmp 0x10040acb
mov edi, dword [esi + 0x50]
mov ebx, dword [esi + 0x44]
sub esp, 8
mov eax, esp
mov dword [eax + 4], 3
mov dword [eax], 2
call fcn.100088a0
mov edx, dword [esi + 0x74]
mov ecx, dword [esi + 0x34]
add esp, 8
mov eax, dword [esi + 0x4c]
mov ebx, dword [ebx]
mov eax, dword [eax]
mov ebx, dword [ebx + eax*4]
mov eax, dword [esi + 0x54]
mov dword [edi], ebx
mov edx, dword [edx]
mov edi, dword [edi]
add edx, edi
mov dword [eax], edx
mov edx, dword [ecx]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.1008cb20
add esp, 8
jmp 0x10040e87
mov eax, dword [esi + 0x7c]
mov ecx, dword [eax]
add ecx, 1
mov dword [eax], ecx
jmp 0x100410e3
mov eax, dword [esi + 0x30]
mov dword [eax], 0
jmp 0x10041465